diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elfnn-aarch64.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 879ced7..c7241ba 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2017-06-16 Jiong Wang <jiong.wang@arm.com> + + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use + SYMBOL_REFERENCES_LOCAL. + 2017-06-15 Jiong Wang <jiong.wang@arm.com> PR ld/21532 diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c index e27f067..b61bb8a 100644 --- a/bfd/elfnn-aarch64.c +++ b/bfd/elfnn-aarch64.c @@ -5329,15 +5329,15 @@ elfNN_aarch64_final_link_relocate (reloc_howto_type *howto, if (bfd_link_pic (info) && (input_section->flags & SEC_ALLOC) != 0 && (input_section->flags & SEC_READONLY) != 0 - && h != NULL - && !h->def_regular) + && !SYMBOL_REFERENCES_LOCAL (info, h)) { int howto_index = bfd_r_type - BFD_RELOC_AARCH64_RELOC_START; _bfd_error_handler /* xgettext:c-format */ - (_("%B: relocation %s against external symbol `%s' can not be used" - " when making a shared object; recompile with -fPIC"), + (_("%B: relocation %s against symbol `%s' which may bind " + "externally can not be used when making a shared object; " + "recompile with -fPIC"), input_bfd, elfNN_aarch64_howto_table[howto_index].name, h->root.root.string); bfd_set_error (bfd_error_bad_value); |