bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/24676] [RISCV] Redundant R_RISCV_DTPMOD* R_RISCV_DTPREL* resulte


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/24676] [RISCV] Redundant R_RISCV_DTPMOD* R_RISCV_DTPREL* resulted from Global Dynamic -> Local Exec relaxation
Date: Thu, 01 Jun 2023 04:31:51 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=24676

--- Comment #6 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by Nelson Chu <nelsonc1225@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=20ef84ed2abb990da08d90e1c978f96d29f40606

commit 20ef84ed2abb990da08d90e1c978f96d29f40606
Author: Nelson Chu <nelson@rivosinc.com>
Date:   Fri May 26 18:05:34 2023 +0800

    [PR ld/22263][PR ld/24676] RISC-V: Avoid spurious R_RISCV_NONE for TLS
GD/IE.

    For TLS GD/IE, add the same condition with the relocate_section in the
    allocate_dynrelocs, to make sure we won't reserve redundant spaces
    for dynamic relocations since the conservative estimatation.

    After applying this patch, ld seems no longer generate the spurious
    R_RISCV_NONE for pr22263-1 test, and the test in pr24676.

    bfd/
            PR ld/22263
            PR ld/24676
            * elfnn-riscv.c (RISCV_TLS_GD_IE_NEED_DYN_RELOC): New defined.
            Set NEED_RELOC to true if TLS GD/IE needs dynamic relocations,
            and INDX will be the dynamic index.
            (allocate_dynrelocs): Don't reserve extra spaces in the rela.got
            if RISCV_TLS_GD_IE_NEED_DYN_RELOC set need_reloc to false.  This
            condition needs to be same as relocate_section.
            (relocate_section): Likewise, use the same condition as
            allocate_dynrelocs.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]