OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [bfd/] [elf32-hppa.c] - Diff between revs 161 and 163

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 161 Rev 163
Line 1787... Line 1787...
          _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr,
          _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr,
                                  eh->dynstr_index);
                                  eh->dynstr_index);
        }
        }
    }
    }
 
 
  if (! hppa_elf_hash_entry (eh)->plabel)
  /* STT_GNU_IFUNC symbol must go through PLT.  */
 
  if (! hppa_elf_hash_entry (eh)->plabel
 
      && eh->type != STT_GNU_IFUNC)
    {
    {
      eh->needs_plt = 0;
      eh->needs_plt = 0;
      eh->plt = elf_hash_table (info)->init_plt_refcount;
      eh->plt = elf_hash_table (info)->init_plt_offset;
    }
    }
}
}
 
 
/* Adjust a symbol defined by a dynamic object and referenced by a
/* Adjust a symbol defined by a dynamic object and referenced by a
   regular object.  The current definition is in some section of the
   regular object.  The current definition is in some section of the
Line 1812... Line 1814...
  /* If this is a function, put it in the procedure linkage table.  We
  /* If this is a function, put it in the procedure linkage table.  We
     will fill in the contents of the procedure linkage table later.  */
     will fill in the contents of the procedure linkage table later.  */
  if (eh->type == STT_FUNC
  if (eh->type == STT_FUNC
      || eh->needs_plt)
      || eh->needs_plt)
    {
    {
 
      /* If the symbol is used by a plabel, we must allocate a PLT slot.
 
         The refcounts are not reliable when it has been hidden since
 
         hide_symbol can be called before the plabel flag is set.  */
 
      if (hppa_elf_hash_entry (eh)->plabel
 
          && eh->plt.refcount <= 0)
 
        eh->plt.refcount = 1;
 
 
      if (eh->plt.refcount <= 0
      if (eh->plt.refcount <= 0
          || (eh->def_regular
          || (eh->def_regular
              && eh->root.type != bfd_link_hash_defweak
              && eh->root.type != bfd_link_hash_defweak
              && ! hppa_elf_hash_entry (eh)->plabel
              && ! hppa_elf_hash_entry (eh)->plabel
              && (!info->shared || info->symbolic)))
              && (!info->shared || info->symbolic)))

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.