\r
xPortPendSVHandler:\r
mrs r0, psp\r
-\r
+ isb\r
/* Get the location of the current TCB. */\r
ldr r3, =pxCurrentTCB\r
ldr r2, [r3]\r
vldmiaeq r0!, {s16-s31}\r
\r
msr psp, r0\r
-\r
+ isb\r
#ifdef WORKAROUND_PMU_CM001 /* XMC4000 specific errata */\r
#if WORKAROUND_PMU_CM001 == 1\r
push { r14 }\r
/* Pop the core registers. */\r
ldmia r0!, {r4-r11, r14}\r
msr psp, r0\r
+ isb\r
mov r0, #0\r
msr basepri, r0\r
bx r14\r
msr msp, r0\r
/* Call SVC to start the first task. */\r
cpsie i\r
+ dsb\r
+ isb\r
svc 0\r
\r
/*-----------------------------------------------------------*/\r