diff options
author | Nick Clifton <nickc@redhat.com> | 2001-09-20 10:37:35 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2001-09-20 10:37:35 +0000 |
commit | 671bae9c9235974d21f45571a12ff64fae238017 (patch) | |
tree | 7fa7d989fe133434f07ff7f59715b01a4427c060 /bfd/elfxx-ia64.c | |
parent | 3a42e9d0622736d6ad84c37a2d4f4f54a0c30469 (diff) | |
download | gdb-671bae9c9235974d21f45571a12ff64fae238017.zip gdb-671bae9c9235974d21f45571a12ff64fae238017.tar.gz gdb-671bae9c9235974d21f45571a12ff64fae238017.tar.bz2 |
coordinate info->symbolic and info->allow_shlib_undefined
Diffstat (limited to 'bfd/elfxx-ia64.c')
-rw-r--r-- | bfd/elfxx-ia64.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/bfd/elfxx-ia64.c b/bfd/elfxx-ia64.c index 4ba4665..d8f1de7 100644 --- a/bfd/elfxx-ia64.c +++ b/bfd/elfxx-ia64.c @@ -1429,7 +1429,7 @@ elfNN_ia64_dynamic_symbol_p (h, info) || h->root.type == bfd_link_hash_defweak) return true; - if ((info->shared && !info->symbolic) + if ((info->shared && (!info->symbolic || info->allow_shlib_undefined)) || ((h->elf_link_hash_flags & (ELF_LINK_HASH_DEF_DYNAMIC | ELF_LINK_HASH_REF_REGULAR)) == (ELF_LINK_HASH_DEF_DYNAMIC | ELF_LINK_HASH_REF_REGULAR))) @@ -2020,7 +2020,8 @@ elfNN_ia64_check_relocs (abfd, info, sec, relocs) have yet been processed. Do something with what we know, as this may help reduce memory usage and processing time later. */ maybe_dynamic = false; - if (h && ((info->shared && ! info->symbolic) + if (h && ((info->shared + && (!info->symbolic || info->allow_shlib_undefined)) || ! (h->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) || h->root.type == bfd_link_hash_defweak || elfNN_ia64_aix_vec (abfd->xvec))) @@ -3509,7 +3510,8 @@ elfNN_ia64_relocate_section (output_bfd, info, input_bfd, input_section, } else if (h->root.type == bfd_link_hash_undefweak) undef_weak_ref = true; - else if (info->shared && !info->symbolic + else if (info->shared + && (!info->symbolic || info->allow_shlib_undefined) && !info->no_undefined && ELF_ST_VISIBILITY (h->other) == STV_DEFAULT) ; |