binutils-gdb/ld/testsuite/ld-loongarch-elf
Lulu Cai 4cb77761d6 LoongArch: Check PC-relative relocations for shared libraries
Building shared libraries should not be allowed for PC-relative
relocations against external symbols.
Currently LoongArch has no corresponding checks and silently
generates wrong shared libraries.

However, In the first version of the medium cmodel, pcalau12i+jirl was
used for function calls, in which case PC-relative relocations were
allowed.
2024-10-17 21:01:52 +08:00
..
64_pcrel.d
64_pcrel.s
abi1_max_imm.dd
abi1_max_imm.s
abi1_sops.s
abi2_max_imm.s
abi2_overflows.s
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.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.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
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
desc-le-norelax.d
desc-le-norelax.s
desc-le-relax.d
desc-le-relax.s
desc-norelax.d
desc-norelax.s
desc-relax.d
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
ie-le-norelax.s
ie-le-relax.d
ie-le-relax.s
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: Check PC-relative relocations for shared libraries 2024-10-17 21:01:52 +08:00
libjirl.s
libnopic-global.s
local-ifunc-reloc.d
local-ifunc-reloc.s
macro_op_32.d
macro_op_32.s
macro_op.d
macro_op.s
max_imm_b16.d
max_imm_b21.d
max_imm_b26.d
max_imm_pcrel20.d
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
overflow_b21.d
overflow_b26.d
overflow_pcrel20.d
overflow_s_0_5_10_16_s2.d
overflow_s_0_10_10_16_s2.d
overflow_s_5_20.d
overflow_s_10_5.d
overflow_s_10_12.d
overflow_s_10_16_s2.d
overflow_s_10_16.d
overflow_u_10_12.d
overflow_u.d
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
pie_discard.s
pie_discard.t
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
relax-align-discard.s
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
tls-le-norelax.s
tls-le-relax.d
tls-le-relax.s
tls-relax-compatible-check-new.s
tls-relax-compatible-check-old.s
tlsdesc_abs.d
tlsdesc_abs.s
tlsdesc_extreme.d
tlsdesc_extreme.s
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
uleb128.dd
uleb128.s
underflow_b16.d
underflow_b21.d
underflow_b26.d
underflow_pcrel20.d
underflow_s_0_5_10_16_s2.d
underflow_s_0_10_10_16_s2.d
underflow_s_5_20.d
underflow_s_10_5.d
underflow_s_10_12.d
underflow_s_10_16_s2.d
underflow_s_10_16.d