[v1] LoongArch: Fix gas and ld test cases
Checks
Context |
Check |
Description |
linaro-tcwg-bot/tcwg_binutils_build--master-arm |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_binutils_build--master-aarch64 |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_binutils_check--master-aarch64 |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_binutils_check--master-arm |
success
|
Testing passed
|
Commit Message
* After adding the old LE relax, all old LE relocations will have
an R_LARCH_RELAX relocation. Fix the gas test case failure caused
by the implementation of the old LE relax.
* loongarch64-elf does not support pie and -z norelro options,
removed in test files.
---
gas/testsuite/gas/loongarch/relocs_32.d | 2 ++
gas/testsuite/gas/loongarch/relocs_64.d | 4 ++++
ld/testsuite/ld-loongarch-elf/desc-le-norelax.d | 2 +-
ld/testsuite/ld-loongarch-elf/desc-le-relax.d | 2 +-
ld/testsuite/ld-loongarch-elf/ie-le-norelax.d | 2 +-
ld/testsuite/ld-loongarch-elf/ie-le-relax.d | 2 +-
ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp | 5 ++++-
ld/testsuite/ld-loongarch-elf/macro_op_32.d | 4 ++++
8 files changed, 18 insertions(+), 5 deletions(-)
@@ -30,8 +30,10 @@ Disassembly of section .text:
24: R_LARCH_GOT_LO12 .L1
28: 14000004 lu12i.w \$a0, 0
28: R_LARCH_TLS_LE_HI20 TLSL1
+ 28: R_LARCH_RELAX \*ABS\*
2c: 03800085 ori \$a1, \$a0, 0x0
2c: R_LARCH_TLS_LE_LO12 TLSL1
+ 2c: R_LARCH_RELAX \*ABS\*
30: 1a000004 pcalau12i \$a0, 0
30: R_LARCH_TLS_IE_PC_HI20 TLSL1
34: 02c00005 li.d \$a1, 0
@@ -48,12 +48,16 @@ Disassembly of section .text:
48: R_LARCH_GOT64_HI12 .L1
4c: 14000004 lu12i.w \$a0, 0
4c: R_LARCH_TLS_LE_HI20 TLSL1
+ 4c: R_LARCH_RELAX \*ABS\*
50: 03800085 ori \$a1, \$a0, 0x0
50: R_LARCH_TLS_LE_LO12 TLSL1
+ 50: R_LARCH_RELAX \*ABS\*
54: 16000004 lu32i.d \$a0, 0
54: R_LARCH_TLS_LE64_LO20 TLSL1
+ 54: R_LARCH_RELAX \*ABS\*
58: 03000085 lu52i.d \$a1, \$a0, 0
58: R_LARCH_TLS_LE64_HI12 TLSL1
+ 58: R_LARCH_RELAX \*ABS\*
5c: 1a000004 pcalau12i \$a0, 0
5c: R_LARCH_TLS_IE_PC_HI20 TLSL1
60: 02c00005 li.d \$a1, 0
@@ -1,5 +1,5 @@
#as:
-#ld: -z norelro -e0 --no-relax
+#ld: -e0 --no-relax
#objdump: -dr
#skip: loongarch32-*-*
@@ -1,5 +1,5 @@
#as:
-#ld: -z norelro -e0
+#ld: -e0
#objdump: -dr -M no-aliases
#skip: loongarch32-*-*
@@ -1,5 +1,5 @@
#as:
-#ld: -z norelro -e0 --no-relax
+#ld: -e0 --no-relax
#objdump: -dr
#skip: loongarch32-*-*
@@ -1,5 +1,5 @@
#as:
-#ld: -z norelro -e0
+#ld: -e0
#objdump: -dr -M no-aliases
#skip: loongarch32-*-*
@@ -133,6 +133,10 @@ if [istarget "loongarch64-*-*"] {
run_dump_test "desc-relax"
}
+ if [check_pie_support] {
+ run_dump_test "pie_discard"
+ }
+
run_dump_test "max_imm_b16"
run_dump_test "max_imm_b21"
run_dump_test "max_imm_b26"
@@ -145,7 +149,6 @@ if [istarget "loongarch64-*-*"] {
run_dump_test "underflow_b21"
run_dump_test "underflow_b26"
run_dump_test "underflow_pcrel20"
- run_dump_test "pie_discard"
run_dump_test "desc-le-norelax"
run_dump_test "desc-le-relax"
run_dump_test "ie-le-norelax"
@@ -49,12 +49,16 @@ Disassembly of section .text:
3c: R_LARCH_RELAX \*ABS\*
40: 14000004 lu12i.w \$a0, 0
40: R_LARCH_TLS_LE_HI20 TLS1
+ 40: R_LARCH_RELAX \*ABS\*
44: 03800084 ori \$a0, \$a0, 0x0
44: R_LARCH_TLS_LE_LO12 TLS1
+ 44: R_LARCH_RELAX \*ABS\*
48: 1a000004 pcalau12i \$a0, 0
48: R_LARCH_TLS_IE_PC_HI20 TLS1
+ 48: R_LARCH_RELAX \*ABS\*
4c: 28800084 ld.w \$a0, \$a0, 0
4c: R_LARCH_TLS_IE_PC_LO12 TLS1
+ 4c: R_LARCH_RELAX \*ABS\*
50: 1a000004 pcalau12i \$a0, 0
50: R_LARCH_TLS_LD_PC_HI20 TLS1
50: R_LARCH_RELAX \*ABS\*