OSDN Git Service

modify cortex-m3
[hos/hos-v4a.git] / kernel / source / arch / proc / arm / arm_v7m / gcc / kpnd_hdr.S
index 3d35b86..ec9ef3e 100644 (file)
@@ -45,11 +45,9 @@ _kernel_pendsv_handler:
                                .thumb_func
                                .type   _kernel_pendsv_proc, %function
 _kernel_pendsv_proc:
-                               push    {r0}
-                               push    {r0, r1, r2, r3, r12, lr}
-
+                               push    {r0, r1}
                                mrs             r0, apsr
-                               push    {r0}
+                               push    {r0, r1, r2, r3, r12, lr}
 
                                /* リターンアドレス格納 */
                                movw    r0, #:lower16:pendsv_ret_addr
@@ -61,13 +59,11 @@ _kernel_pendsv_proc:
                                /* 遅延ディスパッチ */
                                blx             _kernel_dsp_tsk
 
-                               pop             {r0}
-                               msr             apsr, r0
-
                                cpsie   i
 
                                pop             {r0, r1, r2, r3, r12, lr}
-                               pop             {pc}
+                               msr             apsr, r0
+                               pop             {r0, pc}
 
                                .size   _kernel_pendsv_proc, .-_kernel_pendsv_proc