* [PATCH] MIPS: Enable NewABI testing for all Linux targets
@ 2012-08-02 15:22 Maciej W. Rozycki
2012-08-02 18:48 ` Richard Sandiford
2012-08-03 7:38 ` Alan Modra
0 siblings, 2 replies; 10+ messages in thread
From: Maciej W. Rozycki @ 2012-08-02 15:22 UTC (permalink / raw)
To: binutils; +Cc: Richard Sandiford
Hi,
The MIPS/Linux configuration enables all ABI backends for all targets,
including ones that used to support o32 only (e.g. plain mips-linux,
mipsel-linux, etc.). I don't know when the change was made, but at that
time the test suites were not adjusted to take that into account and these
configurations fail to test support for the additional ABIs now included.
Here's a change that updates the GAS and LD test suites accordingly; this
builds upon the infrastructure brought with the SDE NewABI testing update.
Several test cases had to be adjusted for targets that do not update the
ISA selected when the ABI requested requires one higher than the toolchain
has been configured to default for; my understanding is this is
intentional. This has triggered regressions in testing immediately after
enabling for mipsisa32-linux and mipsisa32el-linux targets, and the test
case updates included cover them so that the final version below does not
cause any new problems.
OK to apply?
As a side note, would anyone please explain me what the exact use is for
the "#ifdef BFD64/#endif" clauses in bfd/config.bfd? A comment says:
# Part of this file is processed by targmatch.sed to generate the
# targmatch.h file. The #ifdef and #endif lines that appear below are
# copied directly into targmatch.h.
and the header file is indeed generated, but not processed any further or
included anywhere as far as I can see.
I am asking, because I understand that all the target *plets that depend
on 64-bit BFD need to be wrapped into such a clause. This is however not
the case for the MIPS targets in question -- the fragment concerned looks
like this:
#ifdef BFD64
mips64*el-*-linux*)
targ_defvec=bfd_elf32_ntradlittlemips_vec
targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
want64=true
;;
mips64*-*-linux*)
targ_defvec=bfd_elf32_ntradbigmips_vec
targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
want64=true
;;
#endif
mips*el-*-linux*)
targ_defvec=bfd_elf32_tradlittlemips_vec
targ_selvecs="bfd_elf32_tradbigmips_vec ecoff_little_vec ecoff_big_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec"
want64=true
;;
mips*-*-linux*)
targ_defvec=bfd_elf32_tradbigmips_vec
targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec"
want64=true
;;
-- as you can see the two formers only differ from the two latters by the
default vector and are otherwise the same these days. Am I missing
anything? Also is there any particular reason why we have no pure-o32
MIPS Linux targets anymore?
2012-08-02 Maciej W. Rozycki <macro@codesourcery.com>
gas/testsuite/
* gas/mips/mips.exp: Set has_newabi for all Linux targets.
* gas/mips/cfi-n64-1.d: Adjust for targets that do not infer the
ISA from the ABI.
* gas/mips/elf-rel-got-n32.d: Likewise.
* gas/mips/elf-rel-got-n64.d: Likewise.
* gas/mips/elf-rel-xgot-n32.d: Likewise.
* gas/mips/elf-rel-xgot-n64.d: Likewise.
* gas/mips/elf-rel18.d: Likewise.
* gas/mips/elf-rel28-n32.d: Likewise.
* gas/mips/elf-rel28-n64.d: Likewise.
* gas/mips/jal-newabi.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64-sym32.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/macro-warn-1-n32.d: Likewise.
* gas/mips/macro-warn-2-n32.d: Likewise.
* gas/mips/n32-consec.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf.exp: Set has_newabi for all Linux targets.
Adjust abi_asflags for targets that do not infer the ISA from the
ABI.
* ld-mips-elf/eh-frame1-n32.d: Adjust for targets that do not
infer the ISA from the ABI.
* ld-mips-elf/eh-frame1-n64.d: Likewise.
* ld-mips-elf/eh-frame2-n32.d: Likewise.
* ld-mips-elf/eh-frame2-n64.d: Likewise.
* ld-mips-elf/elf-rel-got-n32-embed.d: Likewise.
* ld-mips-elf/elf-rel-got-n32.d: Likewise.
* ld-mips-elf/elf-rel-got-n64-embed.d: Likewise.
* ld-mips-elf/elf-rel-got-n64-linux.d: Likewise.
* ld-mips-elf/elf-rel-got-n64.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
* ld-mips-elf/emit-relocs-1.d: Likewise.
* ld-mips-elf/got-page-2.d: Likewise.
* ld-mips-elf/no-shared-1-n32.d: Likewise.
* ld-mips-elf/no-shared-1-n64.d: Likewise.
* ld-mips-elf/rel32-n32.d: Likewise.
* ld-mips-elf/rel64.d: Likewise.
* ld-mips-elf/relax-jalr-n32-shared.d: Likewise.
* ld-mips-elf/relax-jalr-n32.d: Likewise.
* ld-mips-elf/relax-jalr-n64-shared.d: Likewise.
* ld-mips-elf/relax-jalr-n64.d: Likewise.
* ld-mips-elf/reloc-1-n32.d: Likewise.
* ld-mips-elf/reloc-1-n64.d: Likewise.
* ld-mips-elf/textrel-1.d: Likewise.
Maciej
binutils-mips-linux-test-newabi.diff
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips.exp
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/mips.exp 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips.exp 2012-08-01 19:20:23.570793422 +0100
@@ -458,7 +458,7 @@ if { [istarget mips*-*-vxworks*] } {
set ecoff [expr [istarget *-*-ecoff*] || [istarget *-*-ultrix*] || [istarget *-*-irix\[1-4\]*] ]
set aout [expr [istarget *-*-bsd*] || [istarget *-*-openbsd*] ]
set addr32 [expr [istarget mipstx39*-*-*] || [istarget mips-*-linux*] || [istarget mipsel-*-linux*] || [istarget mips*-*-ecoff]]
- set has_newabi [expr [istarget *-*-irix6*] || [istarget mips64*-*-linux*] || [istarget mips*-sde-elf*]]
+ set has_newabi [expr [istarget *-*-irix6*] || [istarget mips*-*-linux*] || [istarget mips*-sde-elf*]]
set no_mips16 [expr !$elf]
set no_micromips [expr !$elf]
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/mips-elf.exp
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/mips-elf.exp 2012-08-01 18:08:16.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/mips-elf.exp 2012-08-02 11:36:53.330710466 +0100
@@ -54,15 +54,15 @@ if {![istarget mips*-*-*] || ![is_elf_fo
}
set has_newabi [expr [istarget *-*-irix6*] \
- || [istarget mips64*-*-linux*] \
+ || [istarget mips*-*-linux*] \
|| [istarget mips*-sde-elf*]]
set linux_gnu [expr [istarget mips*-*-linux*]]
set embedded_elf [expr [istarget mips*-*-elf]]
# Set defaults.
set abi_asflags(o32) ""
-set abi_asflags(n32) "-n32 -EB"
-set abi_asflags(n64) "-64 -EB"
+set abi_asflags(n32) "-march=from-abi -n32 -EB"
+set abi_asflags(n64) "-march=from-abi -64 -EB"
set abi_ldflags(o32) ""
set abi_ldflags(n32) -melf32bmipn32
set abi_ldflags(n64) -melf64bmip
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/cfi-n64-1.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/cfi-n64-1.d 2011-10-05 17:51:40.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/cfi-n64-1.d 2012-08-02 11:29:15.511038757 +0100
@@ -1,4 +1,4 @@
-#as: -64 -EB
+#as: -march=from-abi -64 -EB
#objdump: -sj.eh_frame
.*
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-got-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/elf-rel-got-n32.d 2012-07-23 20:48:41.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-got-n32.d 2012-08-02 11:24:06.911179906 +0100
@@ -1,6 +1,6 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS ELF got reloc n32
-#as: -n32 -KPIC
+#as: -march=from-abi -n32 -KPIC
.*: +file format elf32-n.*mips.*
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-got-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/elf-rel-got-n64.d 2012-07-23 20:48:41.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-got-n64.d 2012-08-02 11:24:17.531180499 +0100
@@ -1,6 +1,6 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS ELF got reloc n64
-#as: -64 -KPIC
+#as: -march=from-abi -64 -KPIC
.*: +file format elf64-.*mips.*
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-xgot-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/elf-rel-xgot-n32.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-xgot-n32.d 2012-08-02 11:24:22.111183312 +0100
@@ -1,6 +1,6 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS ELF xgot reloc n32
-#as: -n32 -KPIC -xgot
+#as: -march=from-abi -n32 -KPIC -xgot
#source: elf-rel-got-n32.s
.*: +file format elf32-n.*mips.*
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-xgot-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/elf-rel-xgot-n64.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel-xgot-n64.d 2012-08-02 11:24:26.431764787 +0100
@@ -1,6 +1,6 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS ELF xgot reloc n64
-#as: -64 -KPIC -xgot
+#as: -march=from-abi -64 -KPIC -xgot
#source: elf-rel-got-n64.s
.*: +file format elf64-.*mips.*
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel18.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/elf-rel18.d 2011-10-05 17:51:40.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel18.d 2012-08-02 11:25:21.461565230 +0100
@@ -1,5 +1,5 @@
#readelf: --relocs
-#as: -mabi=n32 -KPIC
+#as: -march=from-abi -mabi=n32 -KPIC
Relocation section '\.rela\.text' at offset .* contains 4 entries:
Offset Info Type Sym.Value Sym. Name \+ Addend
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel28-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/elf-rel28-n32.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel28-n32.d 2012-08-02 11:26:09.911335698 +0100
@@ -1,5 +1,5 @@
#source: elf-rel28.s
-#as: -n32
+#as: -march=from-abi -n32
#objdump: -dr
#name: MIPS ELF reloc 28 (n32)
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel28-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/elf-rel28-n64.d 2011-11-03 00:27:34.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/elf-rel28-n64.d 2012-08-02 11:26:14.291559629 +0100
@@ -1,5 +1,5 @@
#source: elf-rel28.s
-#as: -64
+#as: -march=from-abi -64
#objdump: -dr
#name: MIPS ELF reloc 28 (n64)
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/jal-newabi.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/jal-newabi.d 2011-10-05 17:51:40.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/jal-newabi.d 2012-08-02 11:23:03.401180136 +0100
@@ -1,6 +1,6 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS ELF NewABI jal
-#as: -n32 -KPIC -xgot
+#as: -march=from-abi -n32 -KPIC -xgot
.*: +file format elf32-n.*mips.*
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/ldstla-n64-shared.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/ldstla-n64-shared.d 2011-10-05 17:51:40.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/ldstla-n64-shared.d 2012-08-02 11:27:56.901038721 +0100
@@ -1,5 +1,5 @@
#objdump: -d
-#as: -KPIC -64
+#as: -march=from-abi -KPIC -64
#name: MIPS ld-st-la constants (ABI n64, shared)
#source: ldstla-n64.s
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/ldstla-n64-sym32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/ldstla-n64-sym32.d 2012-07-04 12:07:25.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/ldstla-n64-sym32.d 2012-08-02 11:28:03.551025170 +0100
@@ -1,5 +1,5 @@
#objdump: -dr
-#as: -64 -msym32 -G8 -EB
+#as: -march=from-abi -64 -msym32 -G8 -EB
#name: MIPS ld-st-la with sym32
#source: ldstla-sym32.s
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/ldstla-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/ldstla-n64.d 2011-10-05 17:51:40.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/ldstla-n64.d 2012-08-02 11:28:08.141609499 +0100
@@ -1,5 +1,5 @@
#objdump: -d
-#as: -64
+#as: -march=from-abi -64
#name: MIPS ld-st-la constants (ABI n64)
#source: ldstla-n64.s
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/macro-warn-1-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/macro-warn-1-n32.d 2011-10-05 17:51:40.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/macro-warn-1-n32.d 2012-08-02 11:28:45.190570161 +0100
@@ -1,4 +1,4 @@
-#as: -n32 -KPIC
+#as: -march=from-abi -n32 -KPIC
#source: macro-warn-1.s
#stderr: macro-warn-1-n32.l
#objdump: -p
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/macro-warn-2-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/macro-warn-2-n32.d 2011-10-05 17:51:40.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/macro-warn-2-n32.d 2012-08-02 11:28:49.571351541 +0100
@@ -1,4 +1,4 @@
-#as: -n32 -KPIC
+#as: -march=from-abi -n32 -KPIC
#source: macro-warn-2.s
#objdump: -p
#pass
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/n32-consec.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/n32-consec.d 2011-11-03 00:27:34.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/n32-consec.d 2012-08-02 11:26:43.510876530 +0100
@@ -1,4 +1,4 @@
-#as: -n32
+#as: -march=from-abi -n32
#objdump: -Dr --prefix-addresses
#name: n32 consecutive unrelated relocations
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame1-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/eh-frame1-n32.d 2011-10-04 15:29:04.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame1-n32.d 2012-08-02 11:37:48.471192224 +0100
@@ -1,7 +1,7 @@
#name: MIPS eh-frame 1, n32
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -EB -n32 --defsym alignment=2 --defsym fill=0x40
+#as: -march=from-abi -EB -n32 --defsym alignment=2 --defsym fill=0x40
#readelf: --relocs -wf
#ld: -shared -melf32btsmipn32 -Teh-frame1.ld
#warning: fde encoding in.*prevents \.eh_frame_hdr table being created.
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame1-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/eh-frame1-n64.d 2011-10-04 15:29:04.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame1-n64.d 2012-08-02 11:38:01.471833970 +0100
@@ -1,7 +1,7 @@
#name: MIPS eh-frame 1, n64
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -EB -64 --defsym alignment=3 --defsym fill=0x40
+#as: -march=from-abi -EB -64 --defsym alignment=3 --defsym fill=0x40
#readelf: --relocs -wf
#ld: -shared -melf64btsmip -Teh-frame1.ld
#warning: fde encoding in.*prevents \.eh_frame_hdr table being created.
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame2-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/eh-frame2-n32.d 2011-10-04 15:29:04.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame2-n32.d 2012-08-02 11:38:06.070629669 +0100
@@ -1,7 +1,7 @@
#name: MIPS eh-frame 2, n32
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -EB -n32 --defsym alignment=2 --defsym fill=0
+#as: -march=from-abi -EB -n32 --defsym alignment=2 --defsym fill=0
#readelf: --relocs -wf
#ld: -shared -melf32btsmipn32 -Teh-frame1.ld
#warning: fde encoding in.*prevents \.eh_frame_hdr table being created.
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame2-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/eh-frame2-n64.d 2011-10-04 15:29:04.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/eh-frame2-n64.d 2012-08-02 11:38:10.631622208 +0100
@@ -1,7 +1,7 @@
#name: MIPS eh-frame 2, n64
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -EB -64 --defsym alignment=3 --defsym fill=0
+#as: -march=from-abi -EB -64 --defsym alignment=3 --defsym fill=0
#readelf: --relocs -wf
#ld: -shared -melf64btsmip -Teh-frame1.ld
#warning: fde encoding in.*prevents \.eh_frame_hdr table being created.
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n32-embed.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-got-n32-embed.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n32-embed.d 2012-08-02 11:31:01.781353179 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF got reloc n32
-#as: -EB -n32 -KPIC
+#as: -march=from-abi -EB -n32 -KPIC
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-got-n32.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n32.d 2012-08-02 11:31:06.871351225 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF got reloc n32
-#as: -EB -n32 -KPIC
+#as: -march=from-abi -EB -n32 -KPIC
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n64-embed.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-got-n64-embed.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n64-embed.d 2012-08-02 11:31:10.381333893 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF got reloc n64
-#as: -EB -64 -KPIC
+#as: -march=from-abi -EB -64 -KPIC
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n64-linux.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-got-n64-linux.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n64-linux.d 2012-08-02 11:31:14.081336453 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF got reloc n64
-#as: -EB -64 -KPIC
+#as: -march=from-abi -EB -64 -KPIC
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-got-n64.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-got-n64.d 2012-08-02 11:31:17.830713187 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF got reloc n64
-#as: -EB -64 -KPIC
+#as: -march=from-abi -EB -64 -KPIC
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d 2012-08-02 11:31:21.120867301 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF xgot reloc n32
-#as: -EB -n32 -KPIC -xgot
+#as: -march=from-abi -EB -n32 -KPIC -xgot
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d 2012-08-02 11:31:24.391006206 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF xgot reloc n32
-#as: -EB -n32 -KPIC -xgot
+#as: -march=from-abi -EB -n32 -KPIC -xgot
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d 2012-08-02 11:31:28.110555211 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF xgot reloc n64
-#as: -EB -64 -KPIC -xgot
+#as: -march=from-abi -EB -64 -KPIC -xgot
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d 2012-08-02 11:31:32.051579970 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF xgot reloc n64
-#as: -EB -64 -KPIC -xgot
+#as: -march=from-abi -EB -64 -KPIC -xgot
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d 2012-08-02 11:32:17.701765547 +0100
@@ -1,5 +1,5 @@
#name: MIPS ELF xgot reloc n64
-#as: -EB -64 -KPIC -xgot
+#as: -march=from-abi -EB -64 -KPIC -xgot
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s
#ld:
#objdump: -D --show-raw-insn
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/emit-relocs-1.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/emit-relocs-1.d 2012-07-21 05:03:06.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/emit-relocs-1.d 2012-08-02 11:39:46.381821024 +0100
@@ -1,6 +1,6 @@
#name: Emit relocs 1
-#source: emit-relocs-1a.s -mabi=n32 -EB
-#source: emit-relocs-1b.s -mabi=n32 -EB
+#source: emit-relocs-1a.s -march=from-abi -mabi=n32 -EB
+#source: emit-relocs-1b.s -march=from-abi -mabi=n32 -EB
#ld: -q -T emit-relocs-1.ld -melf32btsmipn32
#objdump: -sr
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/got-page-2.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/got-page-2.d 2011-10-04 15:29:04.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/got-page-2.d 2012-08-02 11:39:17.391335697 +0100
@@ -1,6 +1,6 @@
#name: GOT page test 2
#source: got-page-2.s
-#as: -EB -n32
+#as: -march=from-abi -EB -n32
#ld: -T got-page-1.ld -shared -melf32btsmipn32
#readelf: -d
#
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/no-shared-1-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/no-shared-1-n32.d 2011-10-04 15:29:04.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/no-shared-1-n32.d 2012-08-02 11:29:52.471351313 +0100
@@ -1,4 +1,4 @@
-#as: -mabi=n32 -EB
+#as: -march=from-abi -mabi=n32 -EB
#source: no-shared-1-o32.s
#ld: -melf32btsmipn32 -T no-shared-1.ld
#objdump: -dr -j.text -j.data -j.got
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/no-shared-1-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/no-shared-1-n64.d 2011-10-04 15:29:04.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/no-shared-1-n64.d 2012-08-02 11:29:56.640570231 +0100
@@ -1,4 +1,4 @@
-#as: -mabi=64 -EB
+#as: -march=from-abi -mabi=64 -EB
#ld: -melf64btsmip -T no-shared-1.ld
#objdump: -dr -j.text -j.data -j.got
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/rel32-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/rel32-n32.d 2012-07-26 18:25:36.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/rel32-n32.d 2012-08-02 11:34:13.361604050 +0100
@@ -1,6 +1,6 @@
#name: MIPS rel32 n32
#source: rel32.s
-#as: -KPIC -EB -n32
+#as: -march=from-abi -KPIC -EB -n32
#readelf: -x .text -r
#ld: -shared -melf32btsmipn32
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/rel64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/rel64.d 2012-07-26 18:25:36.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/rel64.d 2012-08-02 11:34:43.301821918 +0100
@@ -1,6 +1,6 @@
#name: MIPS rel64 n64
#source: rel64.s
-#as: -KPIC -EB -64
+#as: -march=from-abi -KPIC -EB -64
#readelf: -x .text -r
#ld: -shared -melf64btsmip
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n32-shared.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/relax-jalr-n32-shared.d 2012-07-21 05:04:01.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n32-shared.d 2012-08-02 11:33:03.841323851 +0100
@@ -1,6 +1,6 @@
#name: MIPS relax-jalr-shared n32
#source: relax-jalr.s
-#as: -KPIC -n32 -EB
+#as: -march=from-abi -KPIC -n32 -EB
#objdump: --prefix-addresses -d --show-raw-insn
#ld: --relax -shared -melf32btsmipn32
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/relax-jalr-n32.d 2012-07-21 05:04:01.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n32.d 2012-08-02 11:33:09.171337706 +0100
@@ -1,6 +1,6 @@
#name: MIPS relax-jalr n32
#source: relax-jalr.s
-#as: -KPIC -n32 -EB
+#as: -march=from-abi -KPIC -n32 -EB
#objdump: --prefix-addresses -d --show-raw-insn
#ld: --relax -melf32btsmipn32
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n64-shared.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/relax-jalr-n64-shared.d 2012-07-21 05:04:01.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n64-shared.d 2012-08-02 11:33:12.261325354 +0100
@@ -1,6 +1,6 @@
#name: MIPS relax-jalr-shared n64
#source: relax-jalr.s
-#as: -KPIC -64 -EB
+#as: -march=from-abi -KPIC -64 -EB
#objdump: --prefix-addresses -d --show-raw-insn
#ld: --relax -shared -melf64btsmip
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/relax-jalr-n64.d 2012-07-21 05:04:01.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/relax-jalr-n64.d 2012-08-02 11:33:16.591336890 +0100
@@ -1,6 +1,6 @@
#name: MIPS relax-jalr n64
#source: relax-jalr.s
-#as: -KPIC -64 -EB
+#as: -march=from-abi -KPIC -64 -EB
#objdump: --prefix-addresses -d --show-raw-insn
#ld: --relax -melf64btsmip
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/reloc-1-n32.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/reloc-1-n32.d 2012-08-01 18:08:16.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/reloc-1-n32.d 2012-08-02 11:35:20.270885209 +0100
@@ -1,5 +1,5 @@
-#source: reloc-1a.s -mabi=n32 -EB
-#source: reloc-1b.s -mabi=n32 -EB
+#source: reloc-1a.s -march=from-abi -mabi=n32 -EB
+#source: reloc-1b.s -march=from-abi -mabi=n32 -EB
#ld: -r
#readelf: --relocs
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/reloc-1-n64.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/reloc-1-n64.d 2012-08-01 18:08:15.000000000 +0100
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/reloc-1-n64.d 2012-08-02 11:35:39.030870838 +0100
@@ -1,5 +1,5 @@
-#source: reloc-1a.s -mabi=64 -EB
-#source: reloc-1b.s -mabi=64 -EB
+#source: reloc-1a.s -march=from-abi -mabi=64 -EB
+#source: reloc-1b.s -march=from-abi -mabi=64 -EB
#ld: -r
#readelf: --relocs
Index: binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/textrel-1.d
===================================================================
--- binutils-fsf-trunk-quilt.orig/ld/testsuite/ld-mips-elf/textrel-1.d 2012-03-08 15:30:07.000000000 +0000
+++ binutils-fsf-trunk-quilt/ld/testsuite/ld-mips-elf/textrel-1.d 2012-08-02 11:38:50.601788241 +0100
@@ -1,6 +1,6 @@
#name: MIPS textrel-1
#source: textrel-1.s
-#as: -EB -n32
+#as: -march=from-abi -EB -n32
#ld: -shared -melf32btsmipn32
#readelf: -d
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-02 15:22 [PATCH] MIPS: Enable NewABI testing for all Linux targets Maciej W. Rozycki
@ 2012-08-02 18:48 ` Richard Sandiford
2012-08-02 19:25 ` Maciej W. Rozycki
2012-08-03 7:38 ` Alan Modra
1 sibling, 1 reply; 10+ messages in thread
From: Richard Sandiford @ 2012-08-02 18:48 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: binutils
"Maciej W. Rozycki" <macro@codesourcery.com> writes:
> The MIPS/Linux configuration enables all ABI backends for all targets,
> including ones that used to support o32 only (e.g. plain mips-linux,
> mipsel-linux, etc.). I don't know when the change was made, but at that
> time the test suites were not adjusted to take that into account and these
> configurations fail to test support for the additional ABIs now included.
>
> Here's a change that updates the GAS and LD test suites accordingly; this
> builds upon the infrastructure brought with the SDE NewABI testing update.
>
> Several test cases had to be adjusted for targets that do not update the
> ISA selected when the ABI requested requires one higher than the toolchain
> has been configured to default for; my understanding is this is
> intentional. This has triggered regressions in testing immediately after
> enabling for mipsisa32-linux and mipsisa32el-linux targets, and the test
> case updates included cover them so that the final version below does not
> cause any new problems.
>
> OK to apply?
OK.
I'm ambivalent about this change. It seems to me that while
it's running more tests, it's actually giving less coverage.
It's forcing more and more of the GNU/Linux tests to act in the same way
as mips64-linux-gnu, so fewer of the mipsisa64-linux-gnu tests (say) are
actually testing the way that mipsisa64-linux-gnu itself will be used.
I.e. -n64, -n32 and -32 are commonplace options for all mips*-linux-gnu,
but -mabi=from-abi is either redundant (for the base configurations)
or incompatible with the target libraries, and so unlikely to be used.
That's just for the record though. The OK still stands.
Richard
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-02 18:48 ` Richard Sandiford
@ 2012-08-02 19:25 ` Maciej W. Rozycki
2012-08-04 18:32 ` Richard Sandiford
0 siblings, 1 reply; 10+ messages in thread
From: Maciej W. Rozycki @ 2012-08-02 19:25 UTC (permalink / raw)
To: Richard Sandiford; +Cc: binutils
Richard,
> I'm ambivalent about this change. It seems to me that while
> it's running more tests, it's actually giving less coverage.
> It's forcing more and more of the GNU/Linux tests to act in the same way
> as mips64-linux-gnu, so fewer of the mipsisa64-linux-gnu tests (say) are
> actually testing the way that mipsisa64-linux-gnu itself will be used.
>
> I.e. -n64, -n32 and -32 are commonplace options for all mips*-linux-gnu,
> but -mabi=from-abi is either redundant (for the base configurations)
> or incompatible with the target libraries, and so unlikely to be used.
I can see your point, in fact I've been wondering how to enable these
tests for configurations that default to o32, but treat n32/n64 as equally
important options, without hardcoding the ISA selection --
mipsisa32*-linux regressions came as a nasty surprise to me while testing
this change as I don't use such targets.
It seems that it has become more and more difficult to figure out the
minimum set of options required to switch between the ABIs -- perhaps
these should be determined at the test suite run time. What do you think?
> That's just for the record though. The OK still stands.
Can you comment on my concerns about config.bfd too?
Maciej
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-02 15:22 [PATCH] MIPS: Enable NewABI testing for all Linux targets Maciej W. Rozycki
2012-08-02 18:48 ` Richard Sandiford
@ 2012-08-03 7:38 ` Alan Modra
1 sibling, 0 replies; 10+ messages in thread
From: Alan Modra @ 2012-08-03 7:38 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: binutils, Richard Sandiford
On Thu, Aug 02, 2012 at 04:21:27PM +0100, Maciej W. Rozycki wrote:
> and the header file is indeed generated, but not processed any further or
> included anywhere as far as I can see.
Look in bfd/targets.c
--
Alan Modra
Australia Development Lab, IBM
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-02 19:25 ` Maciej W. Rozycki
@ 2012-08-04 18:32 ` Richard Sandiford
2012-08-06 21:45 ` Maciej W. Rozycki
0 siblings, 1 reply; 10+ messages in thread
From: Richard Sandiford @ 2012-08-04 18:32 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: binutils
"Maciej W. Rozycki" <macro@codesourcery.com> writes:
>> That's just for the record though. The OK still stands.
>
> Can you comment on my concerns about config.bfd too?
Not including the targets in the BFD64 block at the time that the
extra vectors were added was probably an oversight.
Providing a separate configuration that isn't BFD64 and doesn't have the
extra vectors seems more trouble than it's worth TBH. If you disagree
though, please go ahead.
Richard
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-04 18:32 ` Richard Sandiford
@ 2012-08-06 21:45 ` Maciej W. Rozycki
2012-08-07 8:25 ` Richard Sandiford
0 siblings, 1 reply; 10+ messages in thread
From: Maciej W. Rozycki @ 2012-08-06 21:45 UTC (permalink / raw)
To: Richard Sandiford; +Cc: binutils
On Sat, 4 Aug 2012, Richard Sandiford wrote:
> >> That's just for the record though. The OK still stands.
So I have committed this change now, thanks for your review. I'll think
of something cleverer in place of this -march=from-abi option as time
permits; fortunately it's greppable, so easily replaced.
> > Can you comment on my concerns about config.bfd too?
>
> Not including the targets in the BFD64 block at the time that the
> extra vectors were added was probably an oversight.
I've been wondering if these extra vectors were added by mistake instead,
like slipped through in a larger commit unnoticed. I'll post a fix to the
BFD64 block separately.
> Providing a separate configuration that isn't BFD64 and doesn't have the
> extra vectors seems more trouble than it's worth TBH. If you disagree
> though, please go ahead.
My understanding is it only really matters for hosts that do not have a
64-bit integer type and therefore cannot handle 64-bit quantities. In
which case I couldn't care less, GCC has supported 64-bit long long on
32-bit hosts since time immemorial and the last teething problems in this
area I seem to remember went away in late 1990s.
Maciej
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-06 21:45 ` Maciej W. Rozycki
@ 2012-08-07 8:25 ` Richard Sandiford
2012-08-10 13:19 ` Maciej W. Rozycki
0 siblings, 1 reply; 10+ messages in thread
From: Richard Sandiford @ 2012-08-07 8:25 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: binutils
"Maciej W. Rozycki" <macro@codesourcery.com> writes:
> On Sat, 4 Aug 2012, Richard Sandiford wrote:
>> > Can you comment on my concerns about config.bfd too?
>>
>> Not including the targets in the BFD64 block at the time that the
>> extra vectors were added was probably an oversight.
>
> I've been wondering if these extra vectors were added by mistake instead,
> like slipped through in a larger commit unnoticed. I'll post a fix to the
> BFD64 block separately.
The 64-bit ones? No, Debian wanted to allow 32-bit *-linux-gnu targets
that provice all three ABIs, while still defaulting to o32. The associated
GCC configure option is --enable-targets=all. (Confusingly different from
the binutils meaning, but there you go. That choice of name wasn't a MIPS
invention.)
>> Providing a separate configuration that isn't BFD64 and doesn't have the
>> extra vectors seems more trouble than it's worth TBH. If you disagree
>> though, please go ahead.
>
> My understanding is it only really matters for hosts that do not have a
> 64-bit integer type and therefore cannot handle 64-bit quantities. In
> which case I couldn't care less, GCC has supported 64-bit long long on
> 32-bit hosts since time immemorial and the last teething problems in this
> area I seem to remember went away in late 1990s.
Indeed. And MIPS GCC requires 64-bit HWIs regardless of whether you're
compiling for a 32-bit or 64-bit target.
Richard
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-07 8:25 ` Richard Sandiford
@ 2012-08-10 13:19 ` Maciej W. Rozycki
2012-08-12 18:34 ` Richard Sandiford
0 siblings, 1 reply; 10+ messages in thread
From: Maciej W. Rozycki @ 2012-08-10 13:19 UTC (permalink / raw)
To: Richard Sandiford; +Cc: binutils
On Tue, 7 Aug 2012, Richard Sandiford wrote:
> >> Not including the targets in the BFD64 block at the time that the
> >> extra vectors were added was probably an oversight.
> >
> > I've been wondering if these extra vectors were added by mistake instead,
> > like slipped through in a larger commit unnoticed. I'll post a fix to the
> > BFD64 block separately.
>
> The 64-bit ones? No, Debian wanted to allow 32-bit *-linux-gnu targets
> that provice all three ABIs, while still defaulting to o32. The associated
> GCC configure option is --enable-targets=all. (Confusingly different from
> the binutils meaning, but there you go. That choice of name wasn't a MIPS
> invention.)
OK, thanks for this background information. Here's the change I
promised, no regressions on the 23 MIPS targets. OK to apply?
Maciej
2012-08-10 Maciej W. Rozycki <macro@codesourcery.com>
bfd/
* config.bfd: Wrap mips*-*-linux* and mips*el-*-linux* into
#ifdef BFD64.
binutils-bfd64-mips-linux.diff
Index: binutils-fsf-trunk-quilt/bfd/config.bfd
===================================================================
--- binutils-fsf-trunk-quilt.orig/bfd/config.bfd 2012-07-04 12:07:36.000000000 +0100
+++ binutils-fsf-trunk-quilt/bfd/config.bfd 2012-08-06 22:49:09.591194507 +0100
@@ -1005,7 +1005,6 @@ case "${targ}" in
targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
want64=true
;;
-#endif
mips*el-*-linux*)
targ_defvec=bfd_elf32_tradlittlemips_vec
targ_selvecs="bfd_elf32_tradbigmips_vec ecoff_little_vec ecoff_big_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec"
@@ -1016,7 +1015,6 @@ case "${targ}" in
targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec"
want64=true
;;
-#ifdef BFD64
mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu)
# FreeBSD vectors
targ_defvec=bfd_elf32_ntradlittlemips_freebsd_vec
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-10 13:19 ` Maciej W. Rozycki
@ 2012-08-12 18:34 ` Richard Sandiford
2012-08-13 15:21 ` Maciej W. Rozycki
0 siblings, 1 reply; 10+ messages in thread
From: Richard Sandiford @ 2012-08-12 18:34 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: binutils
"Maciej W. Rozycki" <macro@codesourcery.com> writes:
> On Tue, 7 Aug 2012, Richard Sandiford wrote:
>
>> >> Not including the targets in the BFD64 block at the time that the
>> >> extra vectors were added was probably an oversight.
>> >
>> > I've been wondering if these extra vectors were added by mistake instead,
>> > like slipped through in a larger commit unnoticed. I'll post a fix to the
>> > BFD64 block separately.
>>
>> The 64-bit ones? No, Debian wanted to allow 32-bit *-linux-gnu targets
>> that provice all three ABIs, while still defaulting to o32. The associated
>> GCC configure option is --enable-targets=all. (Confusingly different from
>> the binutils meaning, but there you go. That choice of name wasn't a MIPS
>> invention.)
>
> OK, thanks for this background information. Here's the change I
> promised, no regressions on the 23 MIPS targets. OK to apply?
Yes.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] MIPS: Enable NewABI testing for all Linux targets
2012-08-12 18:34 ` Richard Sandiford
@ 2012-08-13 15:21 ` Maciej W. Rozycki
0 siblings, 0 replies; 10+ messages in thread
From: Maciej W. Rozycki @ 2012-08-13 15:21 UTC (permalink / raw)
To: Richard Sandiford; +Cc: binutils
On Sun, 12 Aug 2012, Richard Sandiford wrote:
> >> >> Not including the targets in the BFD64 block at the time that the
> >> >> extra vectors were added was probably an oversight.
> >> >
> >> > I've been wondering if these extra vectors were added by mistake instead,
> >> > like slipped through in a larger commit unnoticed. I'll post a fix to the
> >> > BFD64 block separately.
> >>
> >> The 64-bit ones? No, Debian wanted to allow 32-bit *-linux-gnu targets
> >> that provice all three ABIs, while still defaulting to o32. The associated
> >> GCC configure option is --enable-targets=all. (Confusingly different from
> >> the binutils meaning, but there you go. That choice of name wasn't a MIPS
> >> invention.)
> >
> > OK, thanks for this background information. Here's the change I
> > promised, no regressions on the 23 MIPS targets. OK to apply?
>
> Yes.
Checked in now, thanks.
Maciej
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2012-08-13 15:02 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-02 15:22 [PATCH] MIPS: Enable NewABI testing for all Linux targets Maciej W. Rozycki
2012-08-02 18:48 ` Richard Sandiford
2012-08-02 19:25 ` Maciej W. Rozycki
2012-08-04 18:32 ` Richard Sandiford
2012-08-06 21:45 ` Maciej W. Rozycki
2012-08-07 8:25 ` Richard Sandiford
2012-08-10 13:19 ` Maciej W. Rozycki
2012-08-12 18:34 ` Richard Sandiford
2012-08-13 15:21 ` Maciej W. Rozycki
2012-08-03 7:38 ` Alan Modra
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).