summaryrefslogtreecommitdiff
path: root/sim/testsuite/sim/sh64/compact/stsl-fpscr.cgs
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/sim/sh64/compact/stsl-fpscr.cgs')
-rw-r--r--sim/testsuite/sim/sh64/compact/stsl-fpscr.cgs28
1 files changed, 28 insertions, 0 deletions
diff --git a/sim/testsuite/sim/sh64/compact/stsl-fpscr.cgs b/sim/testsuite/sim/sh64/compact/stsl-fpscr.cgs
new file mode 100644
index 00000000000..032870dc189
--- /dev/null
+++ b/sim/testsuite/sim/sh64/compact/stsl-fpscr.cgs
@@ -0,0 +1,28 @@
+# sh testcase for sts.l fpscr, @-$rn -*- Asm -*-
+# mach: all
+# as: -isa=shcompact
+# ld: -m shelf32
+
+ .include "compact/testutils.inc"
+
+ start
+
+ .global stsl_fpscr
+stsl_fpscr:
+ mov #40, r0
+ shll8 r0
+ # Preserve r0.
+ mov r0, r7
+ sts.l fpscr, @-r0
+
+check:
+ # Ensure r0 is decremented.
+ add #4, r0
+ cmp/eq r0, r7
+ bf wrong
+
+okay:
+ pass
+wrong:
+ fail
+