diff options
| author | Alejandro Soto <alejandro@34project.org> | 2022-10-23 21:35:49 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2022-10-23 21:35:49 -0600 |
| commit | 0b6aedb9b51878e6d5e4917b58d8c7466e7c669d (patch) | |
| tree | d67985ab07e388b01ecfb832f9d9873acb30c3a5 /tb/sim | |
| parent | 95644e64bfde13b3cc56537740851906f0eba173 (diff) | |
Add sim test: shifts
Diffstat (limited to 'tb/sim')
| -rw-r--r-- | tb/sim/shifts.S | 17 | ||||
| -rw-r--r-- | tb/sim/shifts.py | 4 |
2 files changed, 21 insertions, 0 deletions
diff --git a/tb/sim/shifts.S b/tb/sim/shifts.S new file mode 100644 index 0000000..68ef3f8 --- /dev/null +++ b/tb/sim/shifts.S @@ -0,0 +1,17 @@ +.global reset +reset: + ldr r0, =0xffffffff + ldr r1, =0xbaaaaa9f + ldr r2, =0x00000054 + ldr r3, =0xfffffffe + # r3 = 5d55 + lsr r3, r1, #17 + # r0 = 15000 + lsl r0, r2, #10 + # tmp = aaa9f000 + # r3 = aaa9fd55 + orr r3, r3, r1, lsl #12 + # tmp = 0 + # r2 = r0 = 00015000 + eor r2, r0, r2, asr #7 + mov pc, lr diff --git a/tb/sim/shifts.py b/tb/sim/shifts.py new file mode 100644 index 0000000..38f24a2 --- /dev/null +++ b/tb/sim/shifts.py @@ -0,0 +1,4 @@ +def final(): + assert_reg(r0, 0x00015000) + assert_reg(r2, 0x00015000) + assert_reg(r3, 0xaaa9fd55) |
