aboutsummaryrefslogtreecommitdiff
path: root/src/sys
diff options
context:
space:
mode:
authorChristian Cunningham <cc@localhost>2022-01-22 22:21:24 -0700
committerChristian Cunningham <cc@localhost>2022-01-22 22:21:24 -0700
commit9c0cb4e1f7df02f24751833b384963917bbf2360 (patch)
tree5b4c6949a2b33717cd1264b582c5f61f2e0e644d /src/sys
parent523e704b4fead2a0b286480d27510e3912d54b79 (diff)
Fixed some stuff
Diffstat (limited to 'src/sys')
-rw-r--r--src/sys/schedule.S8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/sys/schedule.S b/src/sys/schedule.S
index 6b6ef1c..a4c07c4 100644
--- a/src/sys/schedule.S
+++ b/src/sys/schedule.S
@@ -6,8 +6,8 @@
.macro preserve_ctx
cps #0x1f // Sys mode
// Store Usr regs
- stmfd sp!, {r0-r12}
- stmfd sp!, {lr}
+ push {r0-r12}
+ push {lr}
ldr r3, =scheduler // struct Scheduler
ldr r2, [r3, #0] // struct Thread* rthread
str lr, [r2, #0] // svc_lr -> void* pc
@@ -23,8 +23,8 @@
cps #0x1f // Sys mode
mov sp, r0 // Set stack pointer
// Restore Usr regs
- ldmfd sp!, {lr}
- ldmfd sp!, {r0-r12}
+ pop {lr}
+ pop {r0-r12}
cps #0x13 // Svc mode
.endm