Projects
openEuler:24.03:SP1:Everything
binutils
_service:tar_scm:LoongArch-Fix-gas-and-ld-test-...
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm:LoongArch-Fix-gas-and-ld-test-cases.patch of Package binutils
From e361b5c22683557c2214f8bb9032d80bb7c3d4e0 Mon Sep 17 00:00:00 2001 From: Lulu Cai <cailulu@loongson.cn> Date: Thu, 7 Mar 2024 11:09:14 +0800 Subject: [PATCH 072/123] LoongArch: Fix gas and ld test cases * 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(-) diff --git a/gas/testsuite/gas/loongarch/relocs_32.d b/gas/testsuite/gas/loongarch/relocs_32.d index 3e1bb62e..96ef2800 100644 --- a/gas/testsuite/gas/loongarch/relocs_32.d +++ b/gas/testsuite/gas/loongarch/relocs_32.d @@ -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 diff --git a/gas/testsuite/gas/loongarch/relocs_64.d b/gas/testsuite/gas/loongarch/relocs_64.d index 631137eb..35dde02f 100644 --- a/gas/testsuite/gas/loongarch/relocs_64.d +++ b/gas/testsuite/gas/loongarch/relocs_64.d @@ -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 diff --git a/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d b/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d index 5a53245a..43749f1b 100644 --- a/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d +++ b/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d @@ -1,5 +1,5 @@ #as: -#ld: -z norelro -e0 --no-relax +#ld: -e0 --no-relax #objdump: -dr #skip: loongarch32-*-* diff --git a/ld/testsuite/ld-loongarch-elf/desc-le-relax.d b/ld/testsuite/ld-loongarch-elf/desc-le-relax.d index 03b5535e..71a540fd 100644 --- a/ld/testsuite/ld-loongarch-elf/desc-le-relax.d +++ b/ld/testsuite/ld-loongarch-elf/desc-le-relax.d @@ -1,5 +1,5 @@ #as: -#ld: -z norelro -e0 +#ld: -e0 #objdump: -dr -M no-aliases #skip: loongarch32-*-* diff --git a/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d b/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d index 81d78ca3..0221b495 100644 --- a/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d +++ b/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d @@ -1,5 +1,5 @@ #as: -#ld: -z norelro -e0 --no-relax +#ld: -e0 --no-relax #objdump: -dr #skip: loongarch32-*-* diff --git a/ld/testsuite/ld-loongarch-elf/ie-le-relax.d b/ld/testsuite/ld-loongarch-elf/ie-le-relax.d index 03b5535e..71a540fd 100644 --- a/ld/testsuite/ld-loongarch-elf/ie-le-relax.d +++ b/ld/testsuite/ld-loongarch-elf/ie-le-relax.d @@ -1,5 +1,5 @@ #as: -#ld: -z norelro -e0 +#ld: -e0 #objdump: -dr -M no-aliases #skip: loongarch32-*-* diff --git a/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp b/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp index ca428f5b..c839f525 100644 --- a/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp +++ b/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp @@ -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" diff --git a/ld/testsuite/ld-loongarch-elf/macro_op_32.d b/ld/testsuite/ld-loongarch-elf/macro_op_32.d index a7349aa8..8fd69922 100644 --- a/ld/testsuite/ld-loongarch-elf/macro_op_32.d +++ b/ld/testsuite/ld-loongarch-elf/macro_op_32.d @@ -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\* -- 2.33.0
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2