MIPS: fix -gnuabi64 testsuite

Test on:
	mips64-linux-gnuabi64
	mips64el-linux-gnuabi64
	mipsisa64-linux-gnuabi64
	mipsisa64el-linux-gnuabi64
	mipsisa64r2-linux-gnuabi64
	mipsisa64r2el-linux-gnuabi64
	mipsisa64r6-linux-gnuabi64
	mipsisa64r6el-linux-gnuabi64
This commit is contained in:
YunQiang Su
2023-05-10 21:22:41 +08:00
parent ffc528aed5
commit cb81e84c72
58 changed files with 803 additions and 530 deletions

View File

@@ -152,6 +152,25 @@ set abi_ldflags(eabi) ""
# Override as needed.
if {[istarget *-*-openbsd*] } {
set irixemul 0
} elseif { [istarget mips*64*-*-linux*-gnuabi64] } {
set abi_asflags(o32) -32
set abi_asflags(o32l) "-32 -march=from-abi"
set abi_asflags(n32) "-n32"
set abi_asflags(n32l) "-n32 -march=from-abi"
set abi_asflags(n64) ""
set abi_asflags(n64l) "-march=from-abi -64"
if [istarget *el-*-*] {
set abi_ldflags(o32) -melf32ltsmip
set abi_ldflags(o32l) -melf32ltsmip
set abi_ldflags(n32) -melf32ltsmipn32
set abi_ldflags(n32l) -melf32ltsmipn32
} else {
set abi_ldflags(o32) -melf32btsmip
set abi_ldflags(o32l) -melf32btsmip
set abi_ldflags(n32) -melf32btsmipn32
set abi_ldflags(n32l) -melf32btsmipn32
}
set irixemul 0
} elseif { [istarget mips*64*-*-linux*] } {
set abi_asflags(o32) -32
set abi_asflags(o32l) "-32 -march=from-abi"

View File

@@ -1269,7 +1269,7 @@ if [is_elf_format] {
run_dump_test "strip-9"
run_dump_test "strip-12"
if { [istarget "mips64*-*-openbsd*"] } {
if { [istarget "mips64*-*-openbsd*"] || [istarget "mips*64*-linux-gnuabi64"] } {
set reloc_format mips64
}
# A relocation type not supported by any target

View File

@@ -2,3 +2,5 @@
Relocation section '.rel.*text' at offset 0x.* contains 1 entry:
Offset Info Type Sym. Value Sym. Name.*
0+04 [0-9A-Fa-f]+ *R_.*0+00 external_symbol.*
#?.*R_MIPS_NONE.*
#?.*R_MIPS_NONE.*

View File

@@ -10,8 +10,8 @@ Section Headers:
+\[ 2\] .rel.+text +REL. +0+ +0+.*
+000000000000001. +000000000000001. +I +. +1 +8
+\[ 3\] .data +PROGBITS +0000000000000000 +000000(48|50)
+000000000000000[48] +0000000000000000 +WA +0 +0 +.*
+\[ 4\] .bss +NOBITS +0000000000000000 +000000(4c|50|54|58|68)
+00000000000000(04|08|10) +0000000000000000 +WA +0 +0 +.*
+\[ 4\] .bss +NOBITS +0000000000000000 +000000(4c|50|54|58|60|68)
+0000000000000000 +0000000000000000 +WA +0 +0 +.*
# x86 targets may put .note.gnu.property here.
# riscv targets put .riscv.attributes here.
@@ -20,10 +20,10 @@ Section Headers:
# aarch64-elf targets have one more data symbol.
# x86 targets may have .note.gnu.property.
# riscv targets have two more symbols, data symbol and .riscv.attributes.
+0+.* +0000000000000018 +(6|7) +(3|4|5) +8
+\[ .\] .strtab +STRTAB +0000000000000000 +0+.*
+0+.* +0000000000000(018|180) +(6|7|10) +(3|4|5|10) +8
+\[..\] .strtab +STRTAB +0000000000000000 +0+.*
+0+.* +0000000000000000 .* +0 +0 +1
+\[ .\] .shstrtab +STRTAB +0000000000000000 +[0-9a-f]+
+\[..\] .shstrtab +STRTAB +0000000000000000 +[0-9a-f]+
+00000000000000.. +0000000000000000 .* +0 +0 +.*
Key to Flags:
#...

View File

@@ -2,7 +2,7 @@
#source: remove-relocs-01.s
#objcopy: --remove-relocations=.data.relocs.01
#readelf: -r
#notarget: "mips64*-*-openbsd*"
#notarget: "mips64*-*-openbsd*" "mips*64*-*-linux-gnuabi64"
Relocation section '\.rela?\.data\.relocs\.02' at offset 0x[0-9a-f]+ contains 3 entries:
.*

View File

@@ -2,7 +2,7 @@
#source: remove-relocs-01.s
#objcopy: --remove-relocations=.data.relocs.0\[12\]
#readelf: -r
#notarget: "mips64*-*-openbsd*"
#notarget: "mips64*-*-openbsd*" "mips*64*-linux-gnuabi64"
Relocation section '\.rela?\.data\.relocs\.03' at offset 0x[0-9a-f]+ contains 3 entries:
.*

View File

@@ -2,7 +2,7 @@
#source: remove-relocs-01.s
#objcopy: --remove-section=.rela.data.relocs.01 --remove-section=.rel.data.relocs.01
#readelf: -r
#notarget: "mips64*-*-openbsd*"
#notarget: "mips64*-*-openbsd*" "mips*64*-linux-gnuabi64"
Relocation section '\.rela?\.data\.relocs\.02' at offset 0x[0-9a-f]+ contains 3 entries:
.*

View File

@@ -2,7 +2,7 @@
#source: remove-relocs-01.s
#objcopy: --remove-relocations=.data.relocs.* --remove-relocations=!.data.relocs.02
#readelf: -r
#notarget: "mips64*-*-openbsd*"
#notarget: "mips64*-*-openbsd*" "mips*64*-linux-gnuabi64"
Relocation section '\.rela?\.data\.relocs\.02' at offset 0x[0-9a-f]+ contains 3 entries:
.*

View File

@@ -1,6 +1,6 @@
#PROG: strip
#source: empty.s
#strip: -R .text -R .data -R .bss -R .ARM.attributes -R .reginfo -R .gnu.attributes -R .MIPS.abiflags -R .pdr -R .xtensa.info -R .ARC.attributes -R .note.gnu.property -R .riscv.attributes -R .csky.attributes
#strip: -R .text -R .data -R .bss -R .ARM.attributes -R .reginfo -R .gnu.attributes -R .MIPS.abiflags -R .MIPS.options -R .pdr -R .xtensa.info -R .ARC.attributes -R .note.gnu.property -R .riscv.attributes -R .csky.attributes
#readelf: -S --wide
#name: strip empty file
#target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi