diff options
Diffstat (limited to 'tb')
| -rw-r--r-- | tb/sim/syscall.S | 17 | ||||
| -rw-r--r-- | tb/sim/syscall.py | 2 |
2 files changed, 19 insertions, 0 deletions
diff --git a/tb/sim/syscall.S b/tb/sim/syscall.S new file mode 100644 index 0000000..a1f7422 --- /dev/null +++ b/tb/sim/syscall.S @@ -0,0 +1,17 @@ +.global reset +reset: + # Switch to user mode + mov r0, lr + mrs r1, cpsr + bic r1, r1, #0b1111 + msr cpsr_fxc, r1 + mov lr, r0 + + mov r0, #123 + swi #0 + mov pc, lr + +.global swi +swi: + add r0, r0, #1 + movs pc, r14 diff --git a/tb/sim/syscall.py b/tb/sim/syscall.py new file mode 100644 index 0000000..cfb9859 --- /dev/null +++ b/tb/sim/syscall.py @@ -0,0 +1,2 @@ +def final(): + assert_reg(r0, 124) |
