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 11/15] MIPS/GAS/test: Add file format overrides


Hi,

 Similarly to architucture-specific tests this change adds a possibility 
to prepare file-format-specific overrides.  This is needed to make 
multi-platform testing easier, e.g. non-ELF targets do not have a separate
concept of the o32/n32/n64 ABI and always treat the architecture specified 
natively, e.g. -mips3 implies a fully 64-bit target like with the n64 ABI.

 Ties are broken such that an architecture override takes precedence over 
a format override.  This has been chosen so as to minimise the number of 
inclusions.  The full sequence of test names tried is as follows:

1. arch@format@test.d

2. arch@test.d

3. format@test.d

4. test.d

2010-10-03  Maciej W. Rozycki  <macro@linux-mips.org>

	gas/testsuite/
	* gas/mips/mips.exp (run_dump_test_arch): Check for the presence
	of a file-format-specific test too.
	(run_dump_test_arches): Pull elf, ecoff and aout variables for use 
	by the above.

 OK to apply?

  Maciej

binutils-2.20.51-20100925-mips-gas-test-format.patch
Index: binutils-2.20.51/gas/testsuite/gas/mips/mips.exp
===================================================================
--- binutils-2.20.51.orig/gas/testsuite/gas/mips/mips.exp
+++ binutils-2.20.51/gas/testsuite/gas/mips/mips.exp
@@ -284,12 +284,17 @@ proc mips_arch_list_matching {args} {
 # Invoke "run_dump_test" for test NAME, with extra assembler and
 # disassembler flags to test architecture ARCH.
 proc run_dump_test_arch { name arch } {
+    upvar elf elf ecoff ecoff aout aout
     global subdir srcdir
 
+    set format [expr { $elf ? "elf" : $ecoff ? "ecoff" : "aout" }]
     set proparch [lindex [mips_arch_properties $arch 0] 0]
-    set archname "${proparch}@${name}"
-    if { [file exists "$srcdir/$subdir/${archname}.d"] } {
-	set name $archname
+    foreach prefix [list ${proparch}@${format}@ ${proparch}@ ${format}@] {
+	set archname ${prefix}${name}
+	if { [file exists "$srcdir/$subdir/${archname}.d"] } {
+	    set name $archname
+	    break
+	}
     }
 
     if [catch {run_dump_test $name \
@@ -306,6 +311,7 @@ proc run_dump_test_arch { name arch } {
 # Invoke "run_dump_test_arch" for test NAME, for each architecture
 # listed in ARCH_LIST.
 proc run_dump_test_arches { name arch_list } {
+    upvar elf elf ecoff ecoff aout aout
     foreach arch $arch_list {
 	run_dump_test_arch "$name" "$arch"
     }


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