binutils-gdb/ld/testsuite/ld-loongarch-elf
Lulu Cai 77bcfb741c LoongArch: Do not relax pcalau12i+ld.d when there is overflow
There is no overflow check for the relaxation of pcalau12i+ld.d =>
pcalau12i+addi.d. For instruction sequences that can be relaxed,
they are directly relaxed to pcalau12i+addi.d. However, when the
relative distance between the symbol and the pc exceeds the 32-bit
range, the symbol value cannot be obtained correctly.

Adds an overflow check for the relaxation of pcalau12i+ld.d.
If it is found that the relaxation will overflow, it will not
be relaxed.
2024-11-19 09:42:23 +08:00
..
64_pcrel.d
64_pcrel.s
abi1_max_imm.dd LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
abi1_max_imm.s LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
abi1_sops.s LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
abi2_max_imm.s LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
abi2_overflows.s LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
abs-global.out Not append rela for absolute symbol 2024-09-07 10:07:13 +08:00
abs-global.s Not append rela for absolute symbol 2024-09-07 10:07:13 +08:00
abssym_pie.d LoongArch: Not alloc dynamic relocs if symbol is absolute 2024-07-11 09:27:22 +08:00
abssym_shared.d LoongArch: Not alloc dynamic relocs if symbol is absolute 2024-07-11 09:27:22 +08:00
abssym.s LoongArch: Not alloc dynamic relocs if symbol is absolute 2024-07-11 09:27:22 +08:00
anno-sym.d LoongArch: Remove unused code in ld test suite 2024-07-01 10:12:59 +08:00
anno-sym.l
anno-sym.s
attr-ifunc-4.c
attr-ifunc-4.out
bad_pcala_hi20_global_pie.d ld, LoongArch: print error about linking without -fPIC or -fPIE flag in more detail 2024-11-11 12:02:35 +08:00
bad_pcala_hi20_global_pie.s ld, LoongArch: print error about linking without -fPIC or -fPIE flag in more detail 2024-11-11 12:02:35 +08:00
bad_pcala_hi20_global.d LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
bad_pcala_hi20_global.s LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
bad_pcala_hi20_weak_pie.d ld, LoongArch: print error about linking without -fPIC or -fPIE flag in more detail 2024-11-11 12:02:35 +08:00
bad_pcala_hi20_weak_pie.s ld, LoongArch: print error about linking without -fPIC or -fPIE flag in more detail 2024-11-11 12:02:35 +08:00
bad_pcala_hi20_weak.d LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
bad_pcala_hi20_weak.s LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
bad_pcrel20_s2_global.d LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
bad_pcrel20_s2_global.s LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
bad_pcrel20_s2_weak.d LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
bad_pcrel20_s2_weak.s LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
binary.ld LoongArch: Add support for OUTPUT_FORMAT("binary") 2024-08-05 17:38:49 +08:00
binary.s LoongArch: Add support for OUTPUT_FORMAT("binary") 2024-08-05 17:38:49 +08:00
check_got_relax.d LoongArch: Do not relax pcalau12i+ld.d when there is overflow 2024-11-19 09:42:23 +08:00
check_got_relax.s LoongArch: Do not relax pcalau12i+ld.d when there is overflow 2024-11-19 09:42:23 +08:00
check_relax_got.ld LoongArch: Do not relax pcalau12i+ld.d when there is overflow 2024-11-19 09:42:23 +08:00
cmodel-libjirl.dd
cmodel.exp
data-got.d LoongArch: ld: Move .got .got.plt before .data and protect .got with relro 2024-04-09 14:31:04 +08:00
data-got.s LoongArch: ld: Move .got .got.plt before .data and protect .got with relro 2024-04-09 14:31:04 +08:00
data-plt.s LoongArch: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
desc-ie-reloc.d LoongArch: TLS IE needs only one dynamic reloc 2024-06-20 16:55:24 +08:00
desc-ie.d LoongArch: TLS IE needs only one dynamic reloc 2024-06-20 16:55:24 +08:00
desc-ie.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
desc-le-norelax.d LoongArch: Fix gas and ld test cases 2024-03-12 17:37:12 +08:00
desc-le-norelax.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
desc-le-relax.d LoongArch: Fix gas and ld test cases 2024-03-12 17:37:12 +08:00
desc-le-relax.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
desc-norelax.d LoongArch: Fix some test failures about TLS desc and TLS relaxation 2024-01-22 17:14:36 +08:00
desc-norelax.s
desc-relax.d LoongArch: Fix some test failures about TLS desc and TLS relaxation 2024-01-22 17:14:36 +08:00
desc-relax.s
disas-jirl-32.d
disas-jirl-32.s
disas-jirl.d
disas-jirl.s
get_abs_global_sym.c Not append rela for absolute symbol 2024-09-07 10:07:13 +08:00
ie-le-norelax.d LoongArch: Fix gas and ld test cases 2024-03-12 17:37:12 +08:00
ie-le-norelax.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
ie-le-relax.d LoongArch: Fix gas and ld test cases 2024-03-12 17:37:12 +08:00
ie-le-relax.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
ifunc-reloc.d LoongArch: Make protected function symbols local for -shared 2024-07-05 12:11:11 +08:00
ifunc-reloc.s LoongArch: Fix bad reloc with mixed visibility ifunc symbols in shared libraries 2024-07-05 12:11:11 +08:00
ifunc.exp
jmp_op.d
jmp_op.s
ld-loongarch-elf.exp LoongArch: Do not relax pcalau12i+ld.d when there is overflow 2024-11-19 09:42:23 +08:00
libjirl.s
libnopic-global.s
local-ifunc-reloc.d
local-ifunc-reloc.s
macro_op_32.d LoongArch: Fix gas and ld test cases 2024-03-12 17:37:12 +08:00
macro_op_32.s
macro_op.d LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
macro_op.s
max_imm_b16.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
max_imm_b21.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
max_imm_b26.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
max_imm_pcrel20.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
medium-call.s
nopic-global-so.rd
nopic-global-so.sd
nopic-global.out
nopic-global.s
nopic-global.sd
nopic-global.xd
nopic-local.out
nopic-local.rd
nopic-local.s
nopic-local.sd
nopic-local.xd
nopic-weak-global-so.rd
nopic-weak-global-so.sd
nopic-weak-global.out
nopic-weak-global.s
nopic-weak-global.sd
nopic-weak-global.xd
nopic-weak-local.out
nopic-weak-local.rd
nopic-weak-local.s
nopic-weak-local.sd
nopic-weak-local.xd
old-tls-le.s
overflow_b16.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_b21.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_b26.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_pcrel20.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_s_0_5_10_16_s2.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_s_0_10_10_16_s2.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_s_5_20.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_s_10_5.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_s_10_12.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_s_10_16_s2.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_s_10_16.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_u_10_12.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
overflow_u.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
partial-link-align-a.s LoongArch: Add -mignore-start-align option 2024-04-20 12:10:40 +08:00
partial-link-align-b.s LoongArch: Add -mignore-start-align option 2024-04-20 12:10:40 +08:00
pcala64.d
pcala64.s
pic.exp LoongArch: Fix ld FAIL test cases 2024-08-01 10:23:37 +08:00
pic.ld
pie_discard.d Avoid unused space in .rela.dyn if sec was discarded 2024-02-27 11:58:33 +08:00
pie_discard.s Avoid unused space in .rela.dyn if sec was discarded 2024-02-27 11:58:33 +08:00
pie_discard.t Avoid unused space in .rela.dyn if sec was discarded 2024-02-27 11:58:33 +08:00
protected-func.d LoongArch: Make protected function symbols local for -shared 2024-07-05 12:11:11 +08:00
protected-func.s LoongArch: Make protected function symbols local for -shared 2024-07-05 12:11:11 +08:00
provide_abs.d LoongArch: Fix wrong relocation handling of symbols defined by PROVIDE 2024-08-26 17:25:45 +08:00
provide_abs.ld LoongArch: Fix wrong relocation handling of symbols defined by PROVIDE 2024-08-26 17:25:45 +08:00
provide_noabs.d LoongArch: Fix wrong relocation handling of symbols defined by PROVIDE 2024-08-26 17:25:45 +08:00
provide_noabs.ld LoongArch: Fix wrong relocation handling of symbols defined by PROVIDE 2024-08-26 17:25:45 +08:00
provide_sym.s LoongArch: Fix wrong relocation handling of symbols defined by PROVIDE 2024-08-26 17:25:45 +08:00
r_larch_32_elf64.d LoongArch: Reject R_LARCH_32 from becoming a runtime reloc in ELFCLASS64 2024-07-05 12:11:10 +08:00
r_larch_32_elf64.s LoongArch: Reject R_LARCH_32 from becoming a runtime reloc in ELFCLASS64 2024-07-05 12:11:10 +08:00
relax-align-discard.lds BFD: Fix the bug of R_LARCH_AGLIN caused by discard section 2024-03-31 14:21:00 +08:00
relax-align-discard.s BFD: Fix the bug of R_LARCH_AGLIN caused by discard section 2024-03-31 14:21:00 +08:00
relax-align-ignore-start.d LoongArch: Add -mignore-start-align option 2024-04-20 12:10:40 +08:00
relax-align-ignore-start.s LoongArch: Add -mignore-start-align option 2024-04-20 12:10:40 +08:00
relax-align.dd
relax-align.s
relax-bound-check-tls-le.s
relax-call36-exe.s LoongArch: Add more relaxation support for call36 2024-10-15 14:26:17 +08:00
relax-call36-so.s LoongArch: Add more relaxation support for call36 2024-10-15 14:26:17 +08:00
relax-medium-call-1.d LoongArch: Fix relaxation overflow caused by ld -z separate-code 2024-05-27 17:41:04 +08:00
relax-medium-call-1.s LoongArch: Fix relaxation overflow caused by ld -z separate-code 2024-05-27 17:41:04 +08:00
relax-medium-call.d LoongArch: Fix relaxation overflow caused by ld -z separate-code 2024-05-27 17:41:04 +08:00
relax-medium-call.s LoongArch: Fix relaxation overflow caused by ld -z separate-code 2024-05-27 17:41:04 +08:00
relax-section-align-overflow.s
relax-segment-max.s
relax-segment-min.s
relax-separate-code-overflow.s LoongArch: Fix relaxation overflow caused by ld -z separate-code 2024-05-27 17:41:04 +08:00
relax-so.s
relax-tls-le.s
relax-ttext.s LoongArch: Disable linker relaxation if set the address of section or segment 2024-06-04 19:47:27 +08:00
relax.exp LoongArch: Add more relaxation support for call36 2024-10-15 14:26:17 +08:00
relax.s
reloc_abs_with_shared.d LoongArch: Add bad static relocation check and output more information to user 2024-04-25 09:21:26 +08:00
reloc_abs_with_shared.s LoongArch: Add bad static relocation check and output more information to user 2024-04-25 09:21:26 +08:00
reloc_le_with_shared.d LoongArch: Add bad static relocation check and output more information to user 2024-04-25 09:21:26 +08:00
reloc_le_with_shared.s LoongArch: Add bad static relocation check and output more information to user 2024-04-25 09:21:26 +08:00
reloc_ler_with_shared.d LoongArch: Add bad static relocation check and output more information to user 2024-04-25 09:21:26 +08:00
reloc_ler_with_shared.s LoongArch: Add bad static relocation check and output more information to user 2024-04-25 09:21:26 +08:00
relr-addend.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-addend.s LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-align.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-align.s LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-data-pie.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-data-shared.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-data.s LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-discard-pie.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-discard-shared.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-discard.ld LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-discard.s LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-got-pie.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-got-shared.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-got-start.d LoongArch: Fix assertion failure with DT_RELR 2024-08-14 17:45:02 +08:00
relr-got-start.s LoongArch: Fix assertion failure with DT_RELR 2024-08-14 17:45:02 +08:00
relr-got.s LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-relocs.ld LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-text-pie.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-text-shared.d LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
relr-text.s LoongArch: Add DT_RELR tests 2024-07-05 12:11:11 +08:00
syscall-0.s
syscall-1.s
syscall.d
tls-le-norelax.d LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tls-le-norelax.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tls-le-relax.d LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tls-le-relax.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tls-relax-compatible-check-new.s
tls-relax-compatible-check-old.s
tlsdesc_abs.d LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tlsdesc_abs.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tlsdesc_extreme.d LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tlsdesc_extreme.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
tlsdesc-dso-reloc.d LoongArch: TLS IE needs only one dynamic reloc 2024-06-20 16:55:24 +08:00
tlsdesc-dso.d LoongArch: TLS IE needs only one dynamic reloc 2024-06-20 16:55:24 +08:00
tlsdesc-dso.s LoongArch: Fix some test cases for TLS transition and relax 2024-03-06 14:47:03 +08:00
uleb128.dd
uleb128.s
underflow_b16.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_b21.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_b26.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_pcrel20.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_s_0_5_10_16_s2.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_s_0_10_10_16_s2.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_s_5_20.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_s_10_5.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_s_10_12.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_s_10_16_s2.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00
underflow_s_10_16.d LoongArch: ld: Fix other pop relocs overflow check and add tests 2024-02-27 11:54:34 +08:00