\r
__asm void prvSetPSP( unsigned long ulValue )\r
{\r
+ PRESERVE8\r
msr psp, r0\r
bx lr;\r
}\r
\r
__asm void prvSetMSP( unsigned long ulValue )\r
{\r
+ PRESERVE8\r
msr msp, r0\r
bx lr;\r
}\r
\r
__asm void vPortDisableInterrupts( void )\r
{\r
+ PRESERVE8\r
cpsid i;\r
bx lr;\r
}\r
\r
__asm void vPortEnableInterrupts( void )\r
{\r
+ PRESERVE8\r
cpsie i;\r
bx lr;\r
}\r
extern pxCurrentTCB;\r
extern vTaskSwitchContext;\r
\r
+ PRESERVE8\r
+\r
/* Start first task if the stack has not yet been setup. */\r
mrs r0, psp\r
cbz r0, no_save\r
__asm void xPortSysTickHandler( void )\r
{\r
extern vTaskIncrementTick\r
+ PRESERVE8\r
\r
/* Call the scheduler tick function. */\r
ldr r0, =vTaskIncrementTick\r