;/*\r
-; FreeRTOS V8.0.1 - Copyright (C) 2014 Real Time Engineers Ltd.\r
+; FreeRTOS V9.0.0rc2 - Copyright (C) 2016 Real Time Engineers Ltd.\r
; All rights reserved\r
;\r
;\r
AND r2, r2, #4\r
SUB sp, sp, r2\r
\r
- ; Obtain the address of the interrupt handler, then pass it into the ISR\r
- ; callback.\r
PUSH {r0-r3, lr}\r
- LDR r1, =configINTERRUPT_VECTOR_ADDRESS\r
- LDR r0, [r1]\r
- LDR r1, =vApplicationIRQHandler\r
- BLX r1\r
+\r
+ ; Call the port part specific handler.\r
+ LDR r0, =vApplicationIRQHandler\r
+ BLX r0\r
POP {r0-r3, lr}\r
ADD sp, sp, r2\r
\r
CPSID i\r
\r
- ; Write to the EOI register\r
+ ; Write to the EOI register.\r
LDR r4, =configEOI_ADDRESS\r
STR r0, [r4]\r
\r
; Restore the old nesting count\r
STR r1, [r3]\r
\r
- ; A context switch is never performed if the nesting count is not 0\r
+ ; A context switch is never performed if the nesting count is not 0.\r
CMP r1, #0\r
BNE exit_without_switch\r
\r
; Restore the context of, and branch to, the task selected to execute next.\r
portRESTORE_CONTEXT\r
\r
-\r
END\r
\r
\r