Specify architecture for SPARC gas tests

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Sat Feb 10 16:02:00 GMT 2018


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.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: gas-sparc-objdump-arch.patch
Type: text/x-patch
Size: 7279 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20180210/76384969/attachment.bin>


More information about the Binutils mailing list