Synopsys ARC update, with updated BSP support (#99)

Update BSP APIs to latest version
Remove unused macro which could have caused warnings
(Code Style) Manually align some macros

Signed-off-by: Yuguo Zou <yuguo.zou@synopsys.com>
diff --git a/portable/ThirdParty/GCC/ARC_EM_HS/freertos_tls.c b/portable/ThirdParty/GCC/ARC_EM_HS/freertos_tls.c
index 6495fd6..900691c 100644
--- a/portable/ThirdParty/GCC/ARC_EM_HS/freertos_tls.c
+++ b/portable/ThirdParty/GCC/ARC_EM_HS/freertos_tls.c
@@ -54,6 +54,7 @@
     extern void __mw_run_tls_dtor();
     extern void __mw_run_tls_ctor();
 
+extern uint32_t exc_nest_count;
 /*
  * Linker generated symbols to mark .tls section addresses
  * first byte .. last byte
@@ -184,7 +185,7 @@
             executable_requires_tls_section();
         }
 
-        if( exc_sense() ) /* In ISR */
+        if( exc_nest_count > 0 ) /* In ISR */
         {
             return get_isr_tls();
         }
diff --git a/portable/ThirdParty/GCC/ARC_EM_HS/port.c b/portable/ThirdParty/GCC/ARC_EM_HS/port.c
index cc3eb1e..b2e3716 100644
--- a/portable/ThirdParty/GCC/ARC_EM_HS/port.c
+++ b/portable/ThirdParty/GCC/ARC_EM_HS/port.c
@@ -41,7 +41,13 @@
 
 volatile unsigned int ulCriticalNesting = 999UL;
 volatile unsigned int context_switch_reqflg; /* task context switch request flag in exceptions and interrupts handling */
-
+/**
+ * \var exc_nest_count
+ * \brief the counter for exc/int processing, =0 no int/exc
+ * >1 in int/exc processing
+ * @}
+ */
+uint32_t exc_nest_count;
 /* --------------------------------------------------------------------------*/
 
 /**
@@ -51,7 +57,7 @@
 static void vKernelTick( void * ptr )
 {
     /* clear timer interrupt */
-    timer_int_clear( BOARD_OS_TIMER_ID );
+    arc_timer_int_clear( BOARD_OS_TIMER_ID );
     board_timer_update( configTICK_RATE_HZ );
 
     if( xTaskIncrementTick() )
@@ -71,8 +77,8 @@
     unsigned int cyc = configCPU_CLOCK_HZ / configTICK_RATE_HZ;
 
     int_disable( BOARD_OS_TIMER_INTNO ); /* disable os timer interrupt */
-    timer_stop( BOARD_OS_TIMER_ID );
-    timer_start( BOARD_OS_TIMER_ID, TIMER_CTRL_IE | TIMER_CTRL_NH, cyc );
+    arc_timer_stop( BOARD_OS_TIMER_ID );
+    arc_timer_start( BOARD_OS_TIMER_ID, TIMER_CTRL_IE | TIMER_CTRL_NH, cyc );
 
     int_handler_install( BOARD_OS_TIMER_INTNO, ( INT_HANDLER_T ) vKernelTick );
     int_pri_set( BOARD_OS_TIMER_INTNO, INT_PRI_MIN );
diff --git a/portable/ThirdParty/GCC/ARC_EM_HS/portmacro.h b/portable/ThirdParty/GCC/ARC_EM_HS/portmacro.h
index 96c4338..6b52deb 100644
--- a/portable/ThirdParty/GCC/ARC_EM_HS/portmacro.h
+++ b/portable/ThirdParty/GCC/ARC_EM_HS/portmacro.h
@@ -56,9 +56,6 @@
     #define portSTACK_TYPE    unsigned int
     #define portBASE_TYPE     portLONG
 
-    #ifndef Inline
-        #define Inline        static __inline__
-    #endif
     #ifndef Asm
         #define Asm           __asm__ volatile
     #endif
@@ -84,21 +81,21 @@
 
     #if ( configUSE_16_BIT_TICKS == 1 )
         typedef uint16_t       TickType_t;
-        #define portMAX_DELAY          ( TickType_t ) 0xffff
+        #define portMAX_DELAY  ( TickType_t ) 0xffff
     #else
         typedef unsigned int   TickType_t;
-        #define portMAX_DELAY          ( TickType_t ) 0xffffffffUL
+        #define portMAX_DELAY  ( TickType_t ) 0xffffffffUL
     #endif
 
-    #define portNO_CRITICAL_NESTING    0x0
+    #define portNO_CRITICAL_NESTING    ( ( uint32_t ) 0 )
     #define portSTACK_GROWTH           ( -1 )
     #define portTICK_PERIOD_MS         ( ( TickType_t ) 1000 / configTICK_RATE_HZ )
     #define portBYTE_ALIGNMENT         8
-    #define portNOP()               Asm( "nop_s" );
+    #define portNOP()                  Asm( "nop_s" );
     #define IPM_ENABLE_ALL             1
 
-    #define portYIELD_FROM_ISR()    vPortYieldFromIsr()
-    #define portYIELD()             vPortYield()
+    #define portYIELD_FROM_ISR()       vPortYieldFromIsr()
+    #define portYIELD()                vPortYield()
 
 /* Critical section management. */
     #define portDISABLE_INTERRUPTS() \