summaryrefslogtreecommitdiffstats
path: root/qemu/tests/tcg/lm32/test_srui.S
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/tests/tcg/lm32/test_srui.S')
-rw-r--r--qemu/tests/tcg/lm32/test_srui.S40
1 files changed, 40 insertions, 0 deletions
diff --git a/qemu/tests/tcg/lm32/test_srui.S b/qemu/tests/tcg/lm32/test_srui.S
new file mode 100644
index 000000000..872c37412
--- /dev/null
+++ b/qemu/tests/tcg/lm32/test_srui.S
@@ -0,0 +1,40 @@
+.include "macros.inc"
+
+start
+
+test_name SRUI_1
+mvi r1, 1
+srui r3, r1, 0
+check_r3 1
+
+test_name SRUI_2
+mvi r1, 0
+srui r3, r1, 1
+check_r3 0
+
+test_name SRUI_3
+load r1 0x40000000
+srui r3, r1, 30
+check_r3 1
+
+test_name SRUI_4
+load r1 0x40000000
+srui r3, r1, 31
+check_r3 0
+
+test_name SRUI_5
+mvi r3, 2
+srui r3, r3, 2
+check_r3 0
+
+test_name SRUI_6
+mvi r1, 0xfffffff0
+srui r3, r1, 2
+check_r3 0x3ffffffc
+
+test_name SRUI_7
+mvi r1, 0xfffffff0
+srui r3, r1, 4
+check_r3 0x0fffffff
+
+end