Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/gpl3/binutils/dist/bfd Allow STT_GNU_IFUNC to be dy...
details: https://anonhg.NetBSD.org/src/rev/aef7681f1a1c
branches: trunk
changeset: 331845:aef7681f1a1c
user: matt <matt%NetBSD.org@localhost>
date: Tue Aug 26 17:03:51 2014 +0000
description:
Allow STT_GNU_IFUNC to be dynamic symbols
diffstat:
external/gpl3/binutils/dist/bfd/elf32-m68k.c | 3 ++-
external/gpl3/binutils/dist/bfd/elf32-sh.c | 3 ++-
external/gpl3/binutils/dist/bfd/elf32-vax.c | 3 ++-
3 files changed, 6 insertions(+), 3 deletions(-)
diffs (60 lines):
diff -r 832eca1e9b6f -r aef7681f1a1c external/gpl3/binutils/dist/bfd/elf32-m68k.c
--- a/external/gpl3/binutils/dist/bfd/elf32-m68k.c Tue Aug 26 16:39:49 2014 +0000
+++ b/external/gpl3/binutils/dist/bfd/elf32-m68k.c Tue Aug 26 17:03:51 2014 +0000
@@ -3104,6 +3104,7 @@
/* Make sure we know what is going on here. */
BFD_ASSERT (dynobj != NULL
&& (h->needs_plt
+ || h->type == STT_GNU_IFUNC
|| h->u.weakdef != NULL
|| (h->def_dynamic
&& h->ref_regular
@@ -3112,7 +3113,7 @@
/* If this is a function, put it in the procedure linkage table. We
will fill in the contents of the procedure linkage table later,
when we know the address of the .got section. */
- if (h->type == STT_FUNC
+ if ((h->type == STT_FUNC || h->type == STT_GNU_IFUNC)
|| h->needs_plt)
{
if ((h->plt.refcount <= 0
diff -r 832eca1e9b6f -r aef7681f1a1c external/gpl3/binutils/dist/bfd/elf32-sh.c
--- a/external/gpl3/binutils/dist/bfd/elf32-sh.c Tue Aug 26 16:39:49 2014 +0000
+++ b/external/gpl3/binutils/dist/bfd/elf32-sh.c Tue Aug 26 17:03:51 2014 +0000
@@ -2808,6 +2808,7 @@
/* Make sure we know what is going on here. */
BFD_ASSERT (htab->root.dynobj != NULL
&& (h->needs_plt
+ || h->type == STT_GNU_IFUNC
|| h->u.weakdef != NULL
|| (h->def_dynamic
&& h->ref_regular
@@ -2816,7 +2817,7 @@
/* If this is a function, put it in the procedure linkage table. We
will fill in the contents of the procedure linkage table later,
when we know the address of the .got section. */
- if (h->type == STT_FUNC
+ if ((h->type == STT_FUNC || h->type == STT_GNU_IFUNC)
|| h->needs_plt)
{
if (h->plt.refcount <= 0
diff -r 832eca1e9b6f -r aef7681f1a1c external/gpl3/binutils/dist/bfd/elf32-vax.c
--- a/external/gpl3/binutils/dist/bfd/elf32-vax.c Tue Aug 26 16:39:49 2014 +0000
+++ b/external/gpl3/binutils/dist/bfd/elf32-vax.c Tue Aug 26 17:03:51 2014 +0000
@@ -946,6 +946,7 @@
/* Make sure we know what is going on here. */
BFD_ASSERT (dynobj != NULL
&& (h->needs_plt
+ || h->type == STT_GNU_IFUNC
|| h->u.weakdef != NULL
|| (h->def_dynamic
&& h->ref_regular
@@ -954,7 +955,7 @@
/* If this is a function, put it in the procedure linkage table. We
will fill in the contents of the procedure linkage table later,
when we know the address of the .got section. */
- if (h->type == STT_FUNC
+ if ((h->type == STT_FUNC || h->type == STT_GNU_IFUNC)
|| h->needs_plt)
{
if (h->plt.refcount <= 0
Home |
Main Index |
Thread Index |
Old Index