This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Patch AArch64] Fix PR target/63874


Hi,

	In this PR we have a situation where we aren't really detecting
weak references vs weak definitions. If one has a weak definition
that binds locally there's no reason not to put out PC relative
relocations.

However if you have a genuine weak reference that is
known not to bind locally it makes very little sense
to put out an entry into the literal pool which doesn't always
work with DSOs and shared objects.

Tested aarch64-none-linux-gnu bootstrap and regression test with no regressions

This is not a regression and given what we've seen recently with protected
symbols and binds_locally_p I'd rather this were queued for GCC 7. 

Ok ?
    
regards
Ramana

gcc/

* config/aarch64/aarch64.c (aarch64_classify_symbol): Typo in comment fixed.
  Only force to memory if it is a weak external reference.


gcc/testsuite

* gcc.target/aarch64/pr63874.c: New test.

Attachment: pr63874.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]