summaryrefslogtreecommitdiffstats
path: root/qemu/tests/tcg/lm32/test_bret.S
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/tests/tcg/lm32/test_bret.S')
-rw-r--r--qemu/tests/tcg/lm32/test_bret.S38
1 files changed, 38 insertions, 0 deletions
diff --git a/qemu/tests/tcg/lm32/test_bret.S b/qemu/tests/tcg/lm32/test_bret.S
new file mode 100644
index 000000000..645210e43
--- /dev/null
+++ b/qemu/tests/tcg/lm32/test_bret.S
@@ -0,0 +1,38 @@
+.include "macros.inc"
+
+start
+
+test_name BRET_1
+mvi r1, 4
+wcsr IE, r1
+load ba mark
+bret
+tc_fail
+bi 1f
+
+mark:
+tc_pass
+
+1:
+test_name BRET_2
+rcsr r3, IE
+check_r3 5
+
+test_name BRET_3
+mvi r1, 0
+wcsr IE, r1
+load ba mark2
+bret
+tc_fail
+bi 1f
+
+mark2:
+tc_pass
+
+1:
+test_name BRET_4
+rcsr r3, IE
+check_r3 0
+
+end
+