This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Specify architecture for SPARC gas tests


A couple of SPARC gas tests FAIL on Solaris/SPARC (both
sparc-sun-solaris2.11 and sparcv9-sun-solaris2.11):

FAIL: sparc PAUSE
FAIL: sparc CBCOND
FAIL: sparc CFR
FAIL: sparc CRYPTO
FAIL: sparc HPC+VIS3
FAIL: sparc IMA
FAIL: sparc OSA2015 %mwait asr and MWAIT instruction
FAIL: sparc OSA2015 %mcdper asr
FAIL: sparc SPARC5 and VIS4.0
FAIL: OSA2015 crypto instructions
FAIL: SPARC6
FAIL: FPCMPSHL OSA2017 instructions
FAIL: OSA2017 ONADD/ONSUB/ONMUL/ONDIV instructions.
FAIL: OSA2017 RLE instructions
FAIL: sparc64 rdasr
FAIL: sparc64 rdpr
FAIL: sparc64 rdhpr
FAIL: sparc64 wrasr
FAIL: sparc64 wrpr

It turns out there's a common pattern here: failures happen for all
tests that use SPARC ISA extensions beyond sparcv9, e.g. for the sparc
PAUSE test:

regexp_diff match failure
regexp "^   0:  b7 80 40 02     wr  %g1, %g2, %pause$"
line   "   0:   b7 80 40 02     wr  %g1, %g2, %asr27"
[...]
regexp_diff match failure
regexp "^   8:  b7 80 20 08     pause  8$"
line   "   8:   b7 80 20 08     wr  8, %asr27"
[...]

The fix is easy, actually: just as the tests specify the ISA extension
to use as a gas flag, the same needs to be done for objdump.  For the
test above, which has -Av9v, this means passing -msparc:v9v to objdump.
Doing so makes all but two (unrelated; to be reported separately)
failures go away.

Tested on both sparc-sun-solaris2.11 and sparcv9-sun-solaris2.11.

Ok for master?

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


2018-02-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* testsuite/gas/sparc/cbcond.d: Add -msparc:v9v to objdump options.
	* testsuite/gas/sparc/cfr.d: Likewise.
	* testsuite/gas/sparc/crypto.d: Likewise.
	* testsuite/gas/sparc/hpcvis3.d: Likewise.
	* testsuite/gas/sparc/ima.d: Likewise.
	* testsuite/gas/sparc/pause.d: Likewise.

	* testsuite/gas/sparc/edge.d: Add -msparc:v9d to objdump options.

	* testsuite/gas/sparc/fpcmpshl.d: Add -msparc:v9m8 to objdump options.
	* testsuite/gas/sparc/ldm-stm.d: Likewise.
	* testsuite/gas/sparc/ldmf-stmf.d: Likewise.
	* testsuite/gas/sparc/on.d: Likewise.
	* testsuite/gas/sparc/rdasr.d: Likewise.
	* testsuite/gas/sparc/rle.d: Likewise.

	* testsuite/gas/sparc/ldtxa.d: Add -msparc:v9c to objdump options.

	* testsuite/gas/sparc/mcdper.d: Add -msparc:v9m to objdump options.
	* testsuite/gas/sparc/mwait.d: Likewise.
	* testsuite/gas/sparc/rdhpr.d: Likewise.
	* testsuite/gas/sparc/rdpr.d: Likewise.
	* testsuite/gas/sparc/sparc5vis4.d: Likewise.
	* testsuite/gas/sparc/sparc6.d: Likewise.
	* testsuite/gas/sparc/wrasr.d: Likewise.
	* testsuite/gas/sparc/wrhpr.d: Likewise.
	* testsuite/gas/sparc/wrpr.d: Likewise.
	* testsuite/gas/sparc/xcrypto.d: Likewise.

# HG changeset patch
# Parent  bde067ae3ad90becdca69694e1996283f9b7912a
Specify architecture for SPARC gas tests

diff --git a/gas/testsuite/gas/sparc/cbcond.d b/gas/testsuite/gas/sparc/cbcond.d
--- a/gas/testsuite/gas/sparc/cbcond.d
+++ b/gas/testsuite/gas/sparc/cbcond.d
@@ -1,5 +1,5 @@
 #as: -Av9v
-#objdump: -dr
+#objdump: -msparc:v9v -dr
 #name: sparc CBCOND
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/cfr.d b/gas/testsuite/gas/sparc/cfr.d
--- a/gas/testsuite/gas/sparc/cfr.d
+++ b/gas/testsuite/gas/sparc/cfr.d
@@ -1,5 +1,5 @@
 #as: -Av9v
-#objdump: -dr
+#objdump: -msparc:v9v -dr
 #name: sparc CFR
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/crypto.d b/gas/testsuite/gas/sparc/crypto.d
--- a/gas/testsuite/gas/sparc/crypto.d
+++ b/gas/testsuite/gas/sparc/crypto.d
@@ -1,5 +1,5 @@
 #as: -Av9v
-#objdump: -dr
+#objdump: -msparc:v9v -dr
 #name: sparc CRYPTO
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/edge.d b/gas/testsuite/gas/sparc/edge.d
--- a/gas/testsuite/gas/sparc/edge.d
+++ b/gas/testsuite/gas/sparc/edge.d
@@ -1,5 +1,5 @@
 #as: -Av9d
-#objdump: -dr
+#objdump: -msparc:v9d -dr
 #name: sparc EDGE
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/fpcmpshl.d b/gas/testsuite/gas/sparc/fpcmpshl.d
--- a/gas/testsuite/gas/sparc/fpcmpshl.d
+++ b/gas/testsuite/gas/sparc/fpcmpshl.d
@@ -1,5 +1,5 @@
 #as: -Av9m8
-#objdump: -dr
+#objdump: -msparc:v9m8 -dr
 #name: FPCMPSHL OSA2017 instructions
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/hpcvis3.d b/gas/testsuite/gas/sparc/hpcvis3.d
--- a/gas/testsuite/gas/sparc/hpcvis3.d
+++ b/gas/testsuite/gas/sparc/hpcvis3.d
@@ -1,5 +1,5 @@
 #as: -Av9v
-#objdump: -dr
+#objdump: -msparc:v9v -dr
 #name: sparc HPC+VIS3
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/ima.d b/gas/testsuite/gas/sparc/ima.d
--- a/gas/testsuite/gas/sparc/ima.d
+++ b/gas/testsuite/gas/sparc/ima.d
@@ -1,5 +1,5 @@
 #as: -Av9v
-#objdump: -dr
+#objdump: -msparc:v9v -dr
 #name: sparc IMA
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/ldm-stm.d b/gas/testsuite/gas/sparc/ldm-stm.d
--- a/gas/testsuite/gas/sparc/ldm-stm.d
+++ b/gas/testsuite/gas/sparc/ldm-stm.d
@@ -1,5 +1,5 @@
 #as: -Av9m8
-#objdump: -dr
+#objdump: -msparc:v9m8 -dr
 #name: sparc LDM/STM/LDMA/STMA
 
 .*: +file format .*
diff --git a/gas/testsuite/gas/sparc/ldmf-stmf.d b/gas/testsuite/gas/sparc/ldmf-stmf.d
--- a/gas/testsuite/gas/sparc/ldmf-stmf.d
+++ b/gas/testsuite/gas/sparc/ldmf-stmf.d
@@ -1,5 +1,5 @@
 #as: -Av9m8
-#objdump: -dr
+#objdump: -msparc:v9m8 -dr
 #name: sparc LDMF/STMF/LDMFA/STMFA
 
 .*: +file format .*
diff --git a/gas/testsuite/gas/sparc/ldtxa.d b/gas/testsuite/gas/sparc/ldtxa.d
--- a/gas/testsuite/gas/sparc/ldtxa.d
+++ b/gas/testsuite/gas/sparc/ldtxa.d
@@ -1,5 +1,5 @@
 #as: -Av9c
-#objdump: -dr
+#objdump: -msparc:v9c -dr
 #name: sparc LDTXA
 
 .*: +file format .*sparc.*
@@ -30,4 +30,4 @@ 0+ <.text>:
   50:	d4 98 dd 40 	ldtxa  \[ %g3 \] #ASI_TWINX_PL, %o2
   54:	d4 98 dd 42 	ldtxa  \[ %g3 \+ %g2 \] #ASI_TWINX_PL, %o2
   58:	d4 98 dd 60 	ldtxa  \[ %g3 \] #ASI_TWINX_SL, %o2
-  5c:	d4 98 dd 62 	ldtxa  \[ %g3 \+ %g2 \] #ASI_TWINX_SL, %o2
\ No newline at end of file
+  5c:	d4 98 dd 62 	ldtxa  \[ %g3 \+ %g2 \] #ASI_TWINX_SL, %o2
diff --git a/gas/testsuite/gas/sparc/mcdper.d b/gas/testsuite/gas/sparc/mcdper.d
--- a/gas/testsuite/gas/sparc/mcdper.d
+++ b/gas/testsuite/gas/sparc/mcdper.d
@@ -1,5 +1,5 @@
 #as: -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc OSA2015 %mcdper asr
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/mwait.d b/gas/testsuite/gas/sparc/mwait.d
--- a/gas/testsuite/gas/sparc/mwait.d
+++ b/gas/testsuite/gas/sparc/mwait.d
@@ -1,5 +1,5 @@
 #as: -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc OSA2015 %mwait asr and MWAIT instruction
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/on.d b/gas/testsuite/gas/sparc/on.d
--- a/gas/testsuite/gas/sparc/on.d
+++ b/gas/testsuite/gas/sparc/on.d
@@ -1,5 +1,5 @@
 #as: -Av9m8
-#objdump: -dr
+#objdump: -msparc:v9m8 -dr
 #name: OSA2017 ONADD/ONSUB/ONMUL/ONDIV instructions.
 
 .*: +file format .*
diff --git a/gas/testsuite/gas/sparc/pause.d b/gas/testsuite/gas/sparc/pause.d
--- a/gas/testsuite/gas/sparc/pause.d
+++ b/gas/testsuite/gas/sparc/pause.d
@@ -1,5 +1,5 @@
 #as: -Av9v
-#objdump: -dr
+#objdump: -msparc:v9v -dr
 #name: sparc PAUSE
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/rdasr.d b/gas/testsuite/gas/sparc/rdasr.d
--- a/gas/testsuite/gas/sparc/rdasr.d
+++ b/gas/testsuite/gas/sparc/rdasr.d
@@ -1,5 +1,5 @@
 #as: -64 -Av9m8
-#objdump: -dr
+#objdump: -msparc:v9m8 -dr
 #name: sparc64 rdasr
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/rdhpr.d b/gas/testsuite/gas/sparc/rdhpr.d
--- a/gas/testsuite/gas/sparc/rdhpr.d
+++ b/gas/testsuite/gas/sparc/rdhpr.d
@@ -1,5 +1,5 @@
 #as: -64 -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc64 rdhpr
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/rdpr.d b/gas/testsuite/gas/sparc/rdpr.d
--- a/gas/testsuite/gas/sparc/rdpr.d
+++ b/gas/testsuite/gas/sparc/rdpr.d
@@ -1,5 +1,5 @@
 #as: -64 -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc64 rdpr
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/rle.d b/gas/testsuite/gas/sparc/rle.d
--- a/gas/testsuite/gas/sparc/rle.d
+++ b/gas/testsuite/gas/sparc/rle.d
@@ -1,5 +1,5 @@
 #as: -Av9m8
-#objdump: -dr
+#objdump: -msparc:v9m8 -dr
 #name: OSA2017 RLE instructions
 
 
diff --git a/gas/testsuite/gas/sparc/sparc5vis4.d b/gas/testsuite/gas/sparc/sparc5vis4.d
--- a/gas/testsuite/gas/sparc/sparc5vis4.d
+++ b/gas/testsuite/gas/sparc/sparc5vis4.d
@@ -1,5 +1,5 @@
 #as: -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc SPARC5 and VIS4.0
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/sparc6.d b/gas/testsuite/gas/sparc/sparc6.d
--- a/gas/testsuite/gas/sparc/sparc6.d
+++ b/gas/testsuite/gas/sparc/sparc6.d
@@ -1,5 +1,5 @@
 #as: -Av9m8
-#objdump: -dr
+#objdump: -msparc:v9m8 -dr
 #name: SPARC6
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/wrasr.d b/gas/testsuite/gas/sparc/wrasr.d
--- a/gas/testsuite/gas/sparc/wrasr.d
+++ b/gas/testsuite/gas/sparc/wrasr.d
@@ -1,5 +1,5 @@
 #as: -64 -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc64 wrasr
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/wrhpr.d b/gas/testsuite/gas/sparc/wrhpr.d
--- a/gas/testsuite/gas/sparc/wrhpr.d
+++ b/gas/testsuite/gas/sparc/wrhpr.d
@@ -1,5 +1,5 @@
 #as: -64 -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc64 wrhpr
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/wrpr.d b/gas/testsuite/gas/sparc/wrpr.d
--- a/gas/testsuite/gas/sparc/wrpr.d
+++ b/gas/testsuite/gas/sparc/wrpr.d
@@ -1,5 +1,5 @@
 #as: -64 -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: sparc64 wrpr
 
 .*: +file format .*sparc.*
diff --git a/gas/testsuite/gas/sparc/xcrypto.d b/gas/testsuite/gas/sparc/xcrypto.d
--- a/gas/testsuite/gas/sparc/xcrypto.d
+++ b/gas/testsuite/gas/sparc/xcrypto.d
@@ -1,5 +1,5 @@
 #as: -Av9m
-#objdump: -dr
+#objdump: -msparc:v9m -dr
 #name: OSA2015 crypto instructions
 
 .*: +file format .*sparc.*

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]