binutils-gdb/ld/testsuite/ld-riscv-elf
Tatsuyuki Ishi 159afbb761 RISC-V: Initial ld.bfd support for TLSDESC.
Only relocation handling for now; relaxation is not implemented yet.

bfd/
    * elfnn-riscv.c (riscv_elf_check_relocs): Record GOT reference and
    paired relocation for TLSDESC_HI20.
    (riscv_elf_adjust_dynamic_symbol): Allocate GOT and reloc slots for
    TLSDESC symbols.
    (riscv_elf_size_dynamic_sections): Likewise but for local symbols.
    (tlsdescoff): New helper to determine static addend for R_TLSDESC.
    (riscv_elf_relocate_section): Ignore TLSDESC_CALL reloc for now (it is
    relaxation only).
    Handle TLSDESC_{LOAD,ADD}_LO12 as paired pcrel relocs.
    For TLS GOT slot generation, generalize the logic to handle any
    combination of (GD, IE, TLSDESC).
    Add TLSDESC Rela generation.
    * ld/testsuite/ld-riscv-elf/tls*: Add TLSDESC instruction sequences
    next to the existing GD and IE sequences. Update expectations.
2024-02-29 15:02:55 +08:00
..
align-small-region.d
align-small-region.ld
align-small-region.s
attr-merge-arch-01.d
attr-merge-arch-01a.s
attr-merge-arch-01b.s
attr-merge-arch-02.d
attr-merge-arch-02a.s
attr-merge-arch-02b.s
attr-merge-arch-03.d
attr-merge-arch-03a.s
attr-merge-arch-03b.s
attr-merge-priv-spec-01.d
attr-merge-priv-spec-02.d
attr-merge-priv-spec-03.d
attr-merge-priv-spec-a.s
attr-merge-priv-spec-b.s
attr-merge-priv-spec-c.s
attr-merge-priv-spec-d.s
attr-merge-priv-spec-failed-01.d
attr-merge-priv-spec-failed-02.d
attr-merge-priv-spec-failed-03.d
attr-merge-priv-spec-failed-04.d
attr-merge-priv-spec-failed-05.d
attr-merge-priv-spec-failed-06.d
attr-merge-stack-align-a.s
attr-merge-stack-align-b.s
attr-merge-stack-align-failed-a.s
attr-merge-stack-align-failed-b.s
attr-merge-stack-align-failed.d
attr-merge-stack-align.d
attr-merge-strict-align-01.d
attr-merge-strict-align-01a.s
attr-merge-strict-align-01b.s
attr-merge-strict-align-02.d
attr-merge-strict-align-02a.s
attr-merge-strict-align-02b.s
attr-merge-strict-align-03.d
attr-merge-strict-align-03a.s
attr-merge-strict-align-03b.s
attr-merge-strict-align-04.d
attr-merge-strict-align-04a.s
attr-merge-strict-align-04b.s
attr-merge-strict-align-05.d
attr-merge-strict-align-05a.s
attr-merge-strict-align-05b.s
attr-merge-user-ext-01.d
attr-merge-user-ext-rv32i2p1_a2p0.s
attr-merge-user-ext-rv32i2p1_a2p1.s
attr-phdr.d
attr-phdr.s
c-lui-2.d
c-lui-2.ld
c-lui-2.s
c-lui.d
c-lui.s
call-relax-0.s
call-relax-1.s
call-relax-2.s
call-relax-3.s
call-relax.d
code-model-01.ld
code-model-02.ld
code-model-medany-01.d
code-model-medany-02.d
code-model-medany-weakref-01.d
code-model-medany-weakref-02.d
code-model-medlow-01.d
code-model-medlow-02.d
code-model-medlow-weakref-01.d
code-model-medlow-weakref-02.d
code-model-relax-medany-01.d
code-model-relax-medany-02.d
code-model-relax-medany-weakref-01.d
code-model-relax-medany-weakref-02.d
code-model-relax-medlow-01-norelaxgp.d
code-model-relax-medlow-01.d
code-model-relax-medlow-02.d
code-model-relax-medlow-weakref-01.d
code-model-relax-medlow-weakref-02.d
code-model.s
data-reloc-rv32-pic.d
data-reloc-rv32-pie.d
data-reloc-rv32-symbolic.d
data-reloc-rv64-abs32-pic.d
data-reloc-rv64-addr32-pic.d
data-reloc-rv64-pic.d
data-reloc-rv64-pie.d
data-reloc-rv64-symbolic.d
data-reloc-rv64-undef32-pic.d
data-reloc.s
disas-jalr.d
disas-jalr.s
gp-test-lib.sd
gp-test.s
gp-test.sd
ifunc-nonplt-exe.rd
ifunc-nonplt-pic.rd
ifunc-nonplt-pie.rd
ifunc-nonplt.d
ifunc-nonplt.s
ifunc-plt-01-exe.rd
ifunc-plt-01-pic.rd
ifunc-plt-01-pie.rd
ifunc-plt-01.d
ifunc-plt-01.s
ifunc-plt-02-exe.rd
ifunc-plt-02-pic.rd
ifunc-plt-02-pie.rd
ifunc-plt-02.d
ifunc-plt-02.s
ifunc-plt-got-overwrite-exe.rd
ifunc-plt-got-overwrite-pic.rd
ifunc-plt-got-overwrite-pie.rd
ifunc-plt-got-overwrite.d
ifunc-plt-got-overwrite.s
ifunc-reloc-call-01-exe.rd
ifunc-reloc-call-01-pic.rd
ifunc-reloc-call-01-pie.rd
ifunc-reloc-call-01.d
ifunc-reloc-call-01.s
ifunc-reloc-call-02-exe.rd
ifunc-reloc-call-02-pic.rd
ifunc-reloc-call-02-pie.rd
ifunc-reloc-call-02.d
ifunc-reloc-call-02.s
ifunc-reloc-data-exe.rd
ifunc-reloc-data-pic.rd
ifunc-reloc-data-pie.rd
ifunc-reloc-data.d
ifunc-reloc-data.s
ifunc-reloc-got-exe.rd
ifunc-reloc-got-pic.rd
ifunc-reloc-got-pie.rd
ifunc-reloc-got.d
ifunc-reloc-got.s
ifunc-reloc-pcrel-exe.rd
ifunc-reloc-pcrel-pic.rd
ifunc-reloc-pcrel-pie.rd
ifunc-reloc-pcrel.d
ifunc-reloc-pcrel.s
ifunc-seperate-caller-nonplt.s
ifunc-seperate-caller-pcrel.s
ifunc-seperate-caller-plt.s
ifunc-seperate-nonplt-exe.d
ifunc-seperate-nonplt-pic.d
ifunc-seperate-nonplt-pie.d
ifunc-seperate-pcrel-pic.d
ifunc-seperate-pcrel-pie.d
ifunc-seperate-plt-exe.d
ifunc-seperate-plt-pic.d
ifunc-seperate-plt-pie.d
ifunc-seperate-resolver.s
ld-riscv-elf.exp RISC-V: Fix local GOT and reloc size calculation for TLS. 2024-02-21 14:58:43 +08:00
pcgp-relax-01-norelaxgp.d
pcgp-relax-01.d
pcgp-relax-01.s
pcgp-relax-02.d
pcgp-relax-02.s
pcrel-lo-addend-2a.d
pcrel-lo-addend-2a.s
pcrel-lo-addend-2b.d
pcrel-lo-addend-2b.s
pcrel-lo-addend-3.ld
pcrel-lo-addend-3a.d
pcrel-lo-addend-3a.s
pcrel-lo-addend-3b.d
pcrel-lo-addend-3b.s
pcrel-lo-addend-3c.d
pcrel-lo-addend-3c.s
pcrel-lo-addend.d
pcrel-lo-addend.s
pcrel-reloc-abs-nopie.d
pcrel-reloc-abs-pie.d
pcrel-reloc-abs.s
pcrel-reloc-rel-nopie.d
pcrel-reloc-rel-pie.d
pcrel-reloc-rel.s
pcrel-reloc.s
pr31179-r.d
pr31179.d
pr31179.s
relax-max-align-gp.d
relax-max-align-gp.s
relax-twice-1.s
relax-twice-2.s
relax-twice.ver
relro-relax-lui.d
relro-relax-lui.s
relro-relax-pcrel.d
relro-relax-pcrel.s
shared-lib-nopic-01.d
shared-lib-nopic-01.s
shared-lib-nopic-02.d
shared-lib-nopic-02.s
shared-lib-nopic-03.d
shared-lib-nopic-03.s
shared-lib-nopic-04.d
shared-lib-nopic-04.s
tls.d RISC-V: Initial ld.bfd support for TLSDESC. 2024-02-29 15:02:55 +08:00
tls.s RISC-V: Initial ld.bfd support for TLSDESC. 2024-02-29 15:02:55 +08:00
tlsbin.d RISC-V: Initial ld.bfd support for TLSDESC. 2024-02-29 15:02:55 +08:00
tlslib.s RISC-V: Fix local GOT and reloc size calculation for TLS. 2024-02-21 14:58:43 +08:00
uleb128.d
uleb128.s
variant_cc-1.s
variant_cc-2.s
variant_cc-now.d
variant_cc-r.d
variant_cc-shared.d
weakref32.d
weakref32.s
weakref64.d
weakref64.s
weakref.ld