bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/18591] Invalid R_X86_64_GOTPCREL -> R_X86_64_PC32 conversions


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/18591] Invalid R_X86_64_GOTPCREL -> R_X86_64_PC32 conversions
Date: Wed, 24 Jun 2015 17:23:40 +0000

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

--- Comment #1 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by H.J. Lu <address@hidden>:

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

commit 59cab532835904f368b0aa99267afba5fda5ded2
Author: H.J. Lu <address@hidden>
Date:   Wed Jun 24 10:13:55 2015 -0700

    Don't convert R_X86_64_GOTPCREL if it will overflow

    When converting "mov address@hidden(%rip), %reg" to "lea foo(%rip), %reg"
    with R_X86_64_PC32 relocation, it may overflow if the target section
    is more than 2GB away.  This patch estimates distance between mov
    instruction and the target section.  We convert R_X86_64_GOTPCREL to
    R_X86_64_PC32 only if their distance is less than 2GB.

        PR ld/18591
        * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Don't convert
        R_X86_64_GOTPCREL to R_X86_64_PC32 if it will cause relocation
        overflow.

-- 
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]