diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2014-01-21 15:42:43 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2014-01-21 15:42:51 -0800 |
commit | 4584ec12076e088cf36965b88ef8710ca85491f9 (patch) | |
tree | 9b22f0bbf45bb9e59e1f3516cfb773d556d2a567 /bfd/ChangeLog | |
parent | efec45729843f9b1864b2a9b491adff85304525a (diff) | |
download | gdb-4584ec12076e088cf36965b88ef8710ca85491f9.zip gdb-4584ec12076e088cf36965b88ef8710ca85491f9.tar.gz gdb-4584ec12076e088cf36965b88ef8710ca85491f9.tar.bz2 |
Check incompatible existing default symbol definition
After resolving a versioned reference, foo@VER1, to a default versioned
definition, foo@@VER1, from a shared object, we also merge it with
the existing regular default symbol definition, foo. When foo is IFUNC
and foo@@VER1 aren't, we will merge 2 incompatible definitions. This
patch avoids merging foo@@VER1 definition with foo definition if
one is IFUNC and the other isn't.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r-- | bfd/ChangeLog | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5923bc3..c70a7db 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,13 @@ 2014-01-21 H.J. Lu <hongjiu.lu@intel.com> + PR ld/16467 + * elflink.c (_bfd_elf_merge_symbol): When types of the existing + regular default symbol definition and the versioned dynamic + symbol definition mismatch, skip the default symbol definition + if one of them is IFUNC. + +2014-01-21 H.J. Lu <hongjiu.lu@intel.com> + PR ld/2404 * elflink.c (_bfd_elf_merge_symbol): Don't check info->shared, info->export_dynamic nor h->ref_dynamic for type mismatch when |