x86: Resolve PLT32 reloc aganst local symbol to section
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 13 Feb 2020 21:44:17 +0000 (13:44 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 13 Feb 2020 21:44:29 +0000 (13:44 -0800)
commit292676c15a615b5a95bede9ee91004d3f7ee7dfd
treee793712b02ffb7817f7ee7ccd2c320e2609115fa
parentfeacfcacaac9f7e62f467a33c4ae54c56501ed18
x86: Resolve PLT32 reloc aganst local symbol to section

Since PLT entry isn't needed for branch to local symbol, we can resolve
R_386_PLT32/R_X86_64_PLT32 relocation aganst local symbol to section,
similar to R_386_PC32/R_X86_64_PC32.

2020-02-13  Fangrui Song   <maskray@google.com>
    H.J. Lu  <hongjiu.lu@intel.com>

PR gas/25551
* config/tc-i386.c (tc_i386_fix_adjustable): Don't check
BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
* testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
* testsuite/gas/i386/relax-5.d: New file.
* testsuite/gas/i386/relax-5.s: Likewise.
* testsuite/gas/i386/x86-64-relax-4.d: Likewise.
* testsuite/gas/i386/x86-64-relax-4.s: Likewise.
gas/ChangeLog
gas/config/tc-i386.c
gas/testsuite/gas/i386/i386.exp
gas/testsuite/gas/i386/relax-5.d [new file with mode: 0644]
gas/testsuite/gas/i386/relax-5.s [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-relax-4.d [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-relax-4.s [new file with mode: 0644]