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]

[PATCH, MIPS] Fix DSP failures for Octeon


The DSP tests are failing for Octeon because they are run for archs compatible
with mips32r2 but since Octeon does not support DSP, disassembling the
instructions fails.

It seems to me that the proper way to run ASE tests should be how 3D was done.
First there is a run_dump_test for the generic architecture (mips64) where the
test itself enforces the architecture.  Second there is run_dump_test_arches
with the mips3d property that other architectures can define if they support
the ASE.  Note that you can't really combine to two tests because because in
the first case the .d file has to explicitly enable the ASE.

Along this logic I am changing the DSP, smartmips and MT tests to use
run_dump_test.  Similarly to 3D, I switch to the generic architecture as part
of the test.  Currently other than the generic archs no other architecture
supports these ASEs so there is no need for the run_dump_test_arches tests.

OK?

Adam

	* gas/mips/mips.exp: Invoke the tests smartmips, mips32-dsp,
	mips32-dspr2, mips64-dsp and mips32-mt with run_dump_test instead
	of run_dump_test_arches.
	* gas/mips/smartmips.d: Pass -mips32.
	* gas/mips/mips64-dsp.d: Pass -mips64r2.
	* gas/mips/mips32-dsp.d: Pass -mips32r2.
	* gas/mips/mips32-dspr2.d: Likewise.
	* gas/mips/mips32-mt.d: Likewise.

Index: gas/mips/mips.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips.exp,v
retrieving revision 1.136
diff -F^\([(a-zA-Z0-9_]\|#define\) -u -p -r1.136 mips.exp
--- gas/mips/mips.exp	4 Feb 2008 19:19:43 -0000	1.136
+++ gas/mips/mips.exp	6 Feb 2008 01:36:19 -0000
@@ -766,11 +766,11 @@ if { [istarget mips*-*-vxworks*] } {
 
     run_dump_test "octeon"
 
-    run_dump_test_arches "smartmips"	[mips_arch_list_matching mips32 !gpr64]
-    run_dump_test_arches "mips32-dsp"	[mips_arch_list_matching mips32r2]
-    run_dump_test_arches "mips32-dspr2"	[mips_arch_list_matching mips32r2]
-    run_dump_test_arches "mips64-dsp"	[mips_arch_list_matching mips64r2]
-    run_dump_test_arches "mips32-mt"	[mips_arch_list_matching mips32r2 !gpr64]
+    run_dump_test "smartmips"
+    run_dump_test "mips32-dsp"
+    run_dump_test "mips32-dspr2"
+    run_dump_test "mips64-dsp"
+    run_dump_test "mips32-mt"
 
     if { $elf && !$no_mips16 } {
 	run_dump_test "mips16-dwarf2"
Index: gas/mips/mips32-dsp.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips32-dsp.d,v
retrieving revision 1.3
diff -F^\([(a-zA-Z0-9_]\|#define\) -u -p -r1.3 mips32-dsp.d
--- gas/mips/mips32-dsp.d	14 Jun 2006 08:29:42 -0000	1.3
+++ gas/mips/mips32-dsp.d	6 Feb 2008 01:36:20 -0000
@@ -1,6 +1,6 @@
 #objdump: -dr --prefix-addresses --show-raw-insn
 #name: MIPS DSP ASE for MIPS32
-#as: -mdsp -32
+#as: -mdsp -mips32r2 -32
 
 # Check MIPS DSP ASE for MIPS32 Instruction Assembly
 
Index: gas/mips/mips32-dspr2.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips32-dspr2.d,v
retrieving revision 1.1
diff -F^\([(a-zA-Z0-9_]\|#define\) -u -p -r1.1 mips32-dspr2.d
--- gas/mips/mips32-dspr2.d	20 Feb 2007 13:28:53 -0000	1.1
+++ gas/mips/mips32-dspr2.d	6 Feb 2008 01:36:20 -0000
@@ -1,6 +1,6 @@
 #objdump: -dr --prefix-addresses --show-raw-insn
 #name: MIPS DSP ASE Rev2 for MIPS32
-#as: -mdspr2 -32
+#as: -mdspr2 -mips32r2 -32
 
 # Check MIPS DSP ASE Rev2 for MIPS32 Instruction Assembly
 
Index: gas/mips/mips32-mt.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips32-mt.d,v
retrieving revision 1.4
diff -F^\([(a-zA-Z0-9_]\|#define\) -u -p -r1.4 mips32-mt.d
--- gas/mips/mips32-mt.d	14 Jun 2006 08:29:42 -0000	1.4
+++ gas/mips/mips32-mt.d	6 Feb 2008 01:36:20 -0000
@@ -1,6 +1,6 @@
 #objdump: -dr --prefix-addresses --show-raw-insn -M cp0-names=mips32
 #name: MIPS MT ASE for MIPS32
-#as: -mmt -32
+#as: -mmt -mips32r2 -32
 #stderr: mips32-mt.l
 
 # Check MIPS MT ASE for MIPS32 Instruction Assembly
Index: gas/mips/mips64-dsp.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips64-dsp.d,v
retrieving revision 1.2
diff -F^\([(a-zA-Z0-9_]\|#define\) -u -p -r1.2 mips64-dsp.d
--- gas/mips/mips64-dsp.d	20 Jun 2006 17:09:29 -0000	1.2
+++ gas/mips/mips64-dsp.d	6 Feb 2008 01:36:20 -0000
@@ -1,6 +1,6 @@
 #objdump: -dr --prefix-addresses --show-raw-insn -M reg-names=32
 #name: MIPS DSP ASE for MIPS64
-#as: -mdsp
+#as: -mdsp -mips64r2
 
 # Check MIPS DSP ASE for MIPS64 Instruction Assembly
 
Index: gas/mips/smartmips.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/smartmips.d,v
retrieving revision 1.2
diff -F^\([(a-zA-Z0-9_]\|#define\) -u -p -r1.2 smartmips.d
--- gas/mips/smartmips.d	20 Jun 2006 17:09:29 -0000	1.2
+++ gas/mips/smartmips.d	6 Feb 2008 01:36:20 -0000
@@ -1,6 +1,6 @@
 #objdump: -dr --prefix-addresses --show-raw-insn -M reg-names=numeric
 #name: SmartMIPS
-#as: -msmartmips -32
+#as: -msmartmips -mips32 -32
 
 
 .*: +file format .*mips.*


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