X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=FreeRTOS%2FSource%2Fportable%2FIAR%2FRL78%2Fportasm.s87;h=a666db54dbe76df826893fa77452310885270183;hb=3d511cabadf346c67f0f56e15e999c02ca0393ed;hp=8920d21418448d3659ef98ff71e60a38ed1cc376;hpb=7c47214f3a6c5b85baebed7c04e05277797a4d89;p=freertos diff --git a/FreeRTOS/Source/portable/IAR/RL78/portasm.s87 b/FreeRTOS/Source/portable/IAR/RL78/portasm.s87 index 8920d2141..a666db54d 100644 --- a/FreeRTOS/Source/portable/IAR/RL78/portasm.s87 +++ b/FreeRTOS/Source/portable/IAR/RL78/portasm.s87 @@ -1,6 +1,7 @@ ;/* -; FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd. -; +; FreeRTOS V8.1.2 - Copyright (C) 2014 Real Time Engineers Ltd. +; All rights reserved +; ; ; *************************************************************************** ; * * @@ -61,7 +62,7 @@ PUBLIC vPortTickISR EXTERN vTaskSwitchContext - EXTERN vTaskIncrementTick + EXTERN xTaskIncrementTick ; FreeRTOS yield handler. This is installed as the BRK software interrupt ; handler. @@ -72,7 +73,7 @@ vPortYield: portRESTORE_CONTEXT ; Restore the context of the next task to run. retb - + ; Starts the scheduler by restoring the context of the task that will execute ; first. RSEG CODE:CODE @@ -86,19 +87,19 @@ vPortStartFirstTask: RSEG CODE:CODE vPortTickISR: - portSAVE_CONTEXT ; Save the context of the current task. - call vTaskIncrementTick ; Call the timer tick function. -#if configUSE_PREEMPTION == 1 - call vTaskSwitchContext ; Call the scheduler to select the next task. -#endif - portRESTORE_CONTEXT ; Restore the context of the next task to run. + portSAVE_CONTEXT ; Save the context of the current task. + call xTaskIncrementTick ; Call the timer tick function. + cmpw ax, #0x00 + skz + call vTaskSwitchContext ; Call the scheduler to select the next task. + portRESTORE_CONTEXT ; Restore the context of the next task to run. reti ; Install the interrupt handlers COMMON INTVEC:CODE:ROOT(1) - ORG 56 + ORG configTICK_VECTOR DW vPortTickISR COMMON INTVEC:CODE:ROOT(1)