Optimize branches to non-weak symbols with visibility
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 7 May 2015 16:13:39 +0000 (09:13 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 7 May 2015 16:19:16 +0000 (09:19 -0700)
commitb084df0b8d1262fb1e969c74bcc5c61e262a6199
treedce3ec5097f44350ac9f84259ce24aa0ef454330
parent1c56a84d9bac1f6a451a89d2c6af3d7078c4290e
Optimize branches to non-weak symbols with visibility

Branches to global non-weak symbols defined in the same segment with
non-default visibility can be optimized the same way as branches to
local symbols.

gas/

* config/tc-i386.c (elf_symbol_resolved_in_segment_p): New.
(md_estimate_size_before_relax): Use it.

gas/testsuite/

* gas/i386/i386.exp: Run relax-3 and x86-64-relax-2.
* gas/i386/relax-3.d: New file.
* gas/i386/relax-3.s: Likewise.
* gas/i386/x86-64-relax-2.d: Likewise.
gas/ChangeLog
gas/config/tc-i386.c
gas/testsuite/ChangeLog
gas/testsuite/gas/i386/i386.exp
gas/testsuite/gas/i386/relax-3.d [new file with mode: 0644]
gas/testsuite/gas/i386/relax-3.s [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-relax-2.d [new file with mode: 0644]