]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Source/portable/IAR/ARM_CA5_No_GIC/portASM.s
Core kernel code:
[freertos] / FreeRTOS / Source / portable / IAR / ARM_CA5_No_GIC / portASM.s
index d16852ea7cc8e942ee803c98b480faebf8c3fea0..f5bbd7a4afba2295636e700f0a51540e00be703b 100644 (file)
@@ -132,26 +132,24 @@ FreeRTOS_IRQ_Handler
        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
@@ -198,7 +196,6 @@ switch_before_exit
        ; Restore the context of, and branch to, the task selected to execute next.\r
        portRESTORE_CONTEXT\r
 \r
-\r
        END\r
 \r
 \r