aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/testsuite/gas/sparc/.Sanitize2
-rw-r--r--gas/testsuite/gas/sparc/synth64.d18
-rw-r--r--gas/testsuite/gas/sparc/synth64.s16
3 files changed, 36 insertions, 0 deletions
diff --git a/gas/testsuite/gas/sparc/.Sanitize b/gas/testsuite/gas/sparc/.Sanitize
index 8c4abfd..366e5cc 100644
--- a/gas/testsuite/gas/sparc/.Sanitize
+++ b/gas/testsuite/gas/sparc/.Sanitize
@@ -29,6 +29,8 @@ membar.d
membar.s
prefetch.d
prefetch.s
+synth64.d
+synth64.s
sparc.exp
Things-to-lose:
diff --git a/gas/testsuite/gas/sparc/synth64.d b/gas/testsuite/gas/sparc/synth64.d
new file mode 100644
index 0000000..a0608e8
--- /dev/null
+++ b/gas/testsuite/gas/sparc/synth64.d
@@ -0,0 +1,18 @@
+#objdump: -dr
+#name: sparc64 synth64
+
+.*: +file format .*sparc.*
+
+Disassembly of section .text:
+0+0000 <foo-4> iprefetch 0+0004 <foo>
+0+0004 <foo> signx %g1, %g2
+0+0008 <foo\+4> clruw %g1, %g2
+0+000c <foo\+8> cas \[ %g1 \], %g2, %g3
+0+0010 <foo\+c> casl \[ %g1 \], %g2, %g3
+0+0014 <foo\+10> casx \[ %g1 \], %g2, %g3
+0+0018 <foo\+14> casxl \[ %g1 \], %g2, %g3
+0+001c <foo\+18> clrx \[ %g1 \+ %g2 \]
+0+0020 <foo\+1c> clrx \[ %g1 \]
+0+0024 <foo\+20> clrx \[ %g1 \+ 1 \]
+0+0028 <foo\+24> clrx \[ %g1 \+ 0x2a \]
+0+002c <foo\+28> clrx \[ 0x42 \]
diff --git a/gas/testsuite/gas/sparc/synth64.s b/gas/testsuite/gas/sparc/synth64.s
new file mode 100644
index 0000000..659f3c2
--- /dev/null
+++ b/gas/testsuite/gas/sparc/synth64.s
@@ -0,0 +1,16 @@
+# sparc64 synthetic insns
+ .text
+ iprefetch foo
+foo:
+ signx %g1,%g2
+ clruw %g1,%g2
+ cas [%g1],%g2,%g3
+ casl [%g1],%g2,%g3
+ casx [%g1],%g2,%g3
+ casxl [%g1],%g2,%g3
+
+ clrx [%g1+%g2]
+ clrx [%g1]
+ clrx [%g1+1]
+ clrx [42+%g1]
+ clrx [0x42]