aboutsummaryrefslogtreecommitdiffstats
path: root/tests/tcg/lm32/test_lb.S
diff options
context:
space:
mode:
Diffstat (limited to 'tests/tcg/lm32/test_lb.S')
-rw-r--r--tests/tcg/lm32/test_lb.S49
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/tcg/lm32/test_lb.S b/tests/tcg/lm32/test_lb.S
new file mode 100644
index 00000000..d677eea4
--- /dev/null
+++ b/tests/tcg/lm32/test_lb.S
@@ -0,0 +1,49 @@
+.include "macros.inc"
+
+start
+
+test_name LB_1
+load r1 data
+lb r3, (r1+0)
+check_r3 0x7e
+
+test_name LB_2
+load r1 data
+lb r3, (r1+1)
+check_r3 0x7f
+
+test_name LB_3
+load r1 data
+lb r3, (r1+-1)
+check_r3 0x7d
+
+test_name LB_4
+load r1 data_msb
+lb r3, (r1+0)
+check_r3 0xfffffffe
+
+test_name LB_5
+load r1 data_msb
+lb r3, (r1+1)
+check_r3 0xffffffff
+
+test_name LB_6
+load r1 data_msb
+lb r3, (r1+-1)
+check_r3 0xfffffffd
+
+test_name LB_7
+load r3 data
+lb r3, (r3+0)
+check_r3 0x7e
+
+end
+
+.data
+ .align 4
+ .byte 0x7a, 0x7b, 0x7c, 0x7d
+data:
+ .byte 0x7e, 0x7f, 0x70, 0x71
+ .byte 0xfa, 0xfb, 0xfc, 0xfd
+data_msb:
+ .byte 0xfe, 0xff, 0xf0, 0xf1