summaryrefslogtreecommitdiff
path: root/sim/testsuite/sim/sh64/compact/andi.cgs
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/sim/sh64/compact/andi.cgs')
-rw-r--r--sim/testsuite/sim/sh64/compact/andi.cgs43
1 files changed, 43 insertions, 0 deletions
diff --git a/sim/testsuite/sim/sh64/compact/andi.cgs b/sim/testsuite/sim/sh64/compact/andi.cgs
new file mode 100644
index 00000000000..32d71c5b477
--- /dev/null
+++ b/sim/testsuite/sim/sh64/compact/andi.cgs
@@ -0,0 +1,43 @@
+# sh testcase for and #$imm8, r0 -*- Asm -*-
+# mach: all
+# as: -isa=shcompact
+# ld: -m shelf32
+
+ .include "compact/testutils.inc"
+
+ start
+
+ .global andi
+andi:
+ mov #0, r0
+ or #255, r0
+ and #0, r0
+ assert r0, #0
+
+large:
+ mov #0, r0
+ or #255, r0
+ shll8 r0
+ or #255, r0
+ shll8 r0
+ or #255, r0
+ shll8 r0
+ or #255, r0
+
+mask:
+ and #255, r0
+ mov r0, r1
+ mov #0, r0
+ or #255, r0
+ cmp/eq r0, r1
+ bf wrong
+
+mask0:
+ and #0, r0
+ assert r0, #0
+
+okay:
+ pass
+
+wrong:
+ fail