mips64-default-n64
authorMatthias Klose <doko@debian.org>
Fri, 18 Feb 2022 04:46:44 +0000 (04:46 +0000)
committerMatthias Klose <doko@debian.org>
Fri, 18 Feb 2022 04:46:44 +0000 (04:46 +0000)
Gbp-Pq: Name mips64-default-n64.diff

bfd/config.bfd
binutils/testsuite/binutils-all/mips/mips-note-2-n32.d
gas/configure
gas/configure.ac
ld/configure.tgt

index cfe5824788261c51b47864ad77ba289f0dd1b317..b31fe6d80c1e2d7953fe40f4d51a8986c485be0c 100644 (file)
@@ -927,11 +927,21 @@ case "${targ}" in
     targ_defvec=mips_elf32_be_vec
     targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
     ;;
-  mips64*el-*-linux*)
+  mips*64*el-*-linux*-gnuabi64)
+    targ_defvec=mips_elf64_trad_le_vec
+    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec"
+    want64=true
+    ;;
+  mips*64*-*-linux*-gnuabi64)
+    targ_defvec=mips_elf64_trad_be_vec
+    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec"
+    want64=true
+    ;;
+  mips*64*el-*-linux*)
     targ_defvec=mips_elf32_ntrad_le_vec
     targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec"
     ;;
-  mips64*-*-linux*)
+  mips*64*-*-linux*)
     targ_defvec=mips_elf32_ntrad_be_vec
     targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec"
     ;;
index c2a581858ed30e5e657dd6fb197af51224ff0872..5e24e7a115eca840253dd5ddfe484ec595ad4d9d 100644 (file)
@@ -1,4 +1,5 @@
 #PROG: objcopy
+#as: -n32
 #readelf: --notes --wide
 #objcopy: --merge-notes
 #name: MIPS merge notes section (n32)
index dc6a6682aa45a3ab0424e3598339aef179f40f6e..67005e4ff9fc9cbbf52acd2bb1f6d37d2e7502a5 100755 (executable)
@@ -12167,6 +12167,9 @@ _ACEOF
        esac
        # Decide which ABI to target by default.
        case ${target} in
+         mips*64*-linux-gnuabi64)
+           mips_default_abi=N64_ABI
+           ;;
          mips64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \
          | mips64*-kfreebsd*-gnu | mips64*-ps2-elf*)
            mips_default_abi=N32_ABI
index 572e56e281c90ab311f50b67ad9ea646f9ebed43..0a552d604bddd8504d85781b36e4429178df1404 100644 (file)
@@ -384,6 +384,9 @@ changequote([,])dnl
        esac
        # Decide which ABI to target by default.
        case ${target} in
+         mips*64*-linux-gnuabi64)
+           mips_default_abi=N64_ABI
+           ;;
          mips64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \
          | mips64*-kfreebsd*-gnu | mips64*-ps2-elf*)
            mips_default_abi=N32_ABI
index c7acf3f11ff17f101d116df48f91a5eba786259e..b588d3ca2c09e353759d40c9b2695b144cae1378 100644 (file)
@@ -543,11 +543,19 @@ mips*-*-vxworks*) targ_emul=elf32ebmipvxworks
                        ;;
 mips*-*-windiss)       targ_emul=elf32mipswindiss
                        ;;
-mips64*el-*-linux-*)   targ_emul=elf32ltsmipn32
+mips*64*el-*-linux-gnuabi64)   targ_emul=elf64ltsmip
+                       targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip"
+                       targ_extra_libpath=$targ_extra_emuls
+                       ;;
+mips*64*el-*-linux-*)  targ_emul=elf32ltsmipn32
                        targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
                        targ_extra_libpath=$targ_extra_emuls
                        ;;
-mips64*-*-linux-*)     targ_emul=elf32btsmipn32
+mips*64*-*-linux-gnuabi64)     targ_emul=elf64btsmip
+                       targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip"
+                       targ_extra_libpath=$targ_extra_emuls
+                       ;;
+mips*64*-*-linux-*)    targ_emul=elf32btsmipn32
                        targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
                        targ_extra_libpath=$targ_extra_emuls
                        ;;