Home | History | Annotate | Download | only in bfd

Lines Matching refs:hh

271       struct elf64_hppa_link_hash_entry *hh;
274 hh = hppa_elf_hash_entry (entry);
275 memset (&hh->dlt_offset, 0,
440 struct elf64_hppa_link_hash_entry *hh,
454 rent->next = hh->reloc_entries;
460 hh->reloc_entries = rent;
627 struct elf64_hppa_link_hash_entry *hh;
638 hh = hppa_elf_hash_entry (elf_sym_hashes (abfd)[indx]);
639 while (hh->eh.root.type == bfd_link_hash_indirect
640 || hh->eh.root.type == bfd_link_hash_warning)
641 hh = hppa_elf_hash_entry (hh->eh.root.u.i.link);
645 hh->eh.ref_regular = 1;
648 hh = NULL;
655 if (hh && ((bfd_link_pic (info)
658 || !hh->eh.def_regular
659 || hh->eh.root.type == bfd_link_hash_defweak))
712 if (hh != NULL && hh->eh.type != STT_PARISC_MILLI)
769 if (hh)
773 hh->owner = abfd;
774 hh->sym_indx = r_symndx;
786 if (hh != NULL)
788 hh->want_dlt = 1;
789 hh->eh.got.refcount += 1;
809 if (hh != NULL)
811 hh->want_plt = 1;
812 hh->eh.needs_plt = 1;
813 hh->eh.plt.refcount += 1;
834 if (hh)
835 hh->want_stub = 1;
847 if (hh != NULL)
848 hh->want_opd = 1;
873 if (hh != NULL
874 && !count_dyn_reloc (abfd, hh, dynrel_type, sec,
928 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
946 hh->want_opd = 1;
949 hh->st_shndx = -1;
961 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
964 if (hh->want_dlt)
976 (x->info, owner, hh->sym_indx)))
981 hh->dlt_offset = x->ofs;
992 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
995 if (hh->want_plt
1001 hh->plt_offset = x->ofs;
1003 if (hh->plt_offset < 0x2000)
1011 hppa_info->gp_offset = hh->plt_offset;
1015 hh->want_plt = 0;
1025 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
1028 if (hh->want_stub
1034 hh->stub_offset = x->ofs;
1038 hh->want_stub = 0;
1047 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
1050 if (hh && hh->want_opd)
1054 if (hh && (hh->eh.root.type == bfd_link_hash_undefined
1055 || hh->eh.root.type == bfd_link_hash_undefweak
1056 || hh->eh.root.u.def.section->output_section == NULL))
1057 hh->want_opd = 0;
1063 || hh == NULL
1064 || (hh->eh.dynindx == -1 && hh->eh.type != STT_PARISC_MILLI)
1065 || (hh->eh.root.type == bfd_link_hash_defined
1066 || hh->eh.root.type == bfd_link_hash_defweak))
1073 && (hh == NULL || (hh->eh.dynindx == -1)))
1077 owner = (hh->owner ? hh->owner: eh->root.u.def.section->owner);
1080 (x->info, owner, hh->sym_indx))
1107 hh->opd_offset = x->ofs;
1113 hh->want_opd = 0;
1396 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
1416 for (rent = hh->reloc_entries; rent; rent = rent->next)
1420 if (!shared && rent->type == R_PARISC_FPTR64 && hh->want_opd)
1430 (x->info, rent->sec->owner, hh->sym_indx))
1436 if ((dynamic_symbol || shared) && hh->want_dlt)
1442 if (shared && hh->want_opd)
1445 if (hh->want_plt && dynamic_symbol)
1869 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
1883 if (hh->want_opd && hh->st_shndx != -1)
1886 sym->st_value = hh->st_value;
1887 sym->st_shndx = hh->st_shndx;
1902 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
1920 if (hh->want_opd)
1926 hh->st_value = sym->st_value;
1927 hh->st_shndx = sym->st_shndx;
1931 sym->st_value = (hh->opd_offset
1939 if (hh->want_plt
1968 bfd_put_64 (splt->owner, value, splt->contents + hh->plt_offset);
1970 bfd_put_64 (splt->owner, value, splt->contents + hh->plt_offset + 0x8);
1978 rel.r_offset = (hh->plt_offset + splt->output_offset
1980 rel.r_info = ELF64_R_INFO (hh->eh.dynindx, R_PARISC_IPLT);
1989 if (hh->want_stub
2002 memcpy (stub->contents + hh->stub_offset, plt_stub, sizeof (plt_stub));
2015 value = hh->plt_offset - hppa_info->gp_offset;
2017 insn = bfd_get_32 (stub->owner, stub->contents + hh->stub_offset);
2037 hh->eh.root.root.string, (int64_t) value);
2042 stub->contents + hh->stub_offset);
2046 insn = bfd_get_32 (stub->owner, stub->contents + hh->stub_offset + 8);
2058 stub->contents + hh->stub_offset + 8);
2070 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
2083 if (hh->want_opd)
2091 memset (sopd->contents + hh->opd_offset, 0, 16);
2098 bfd_put_64 (sopd->owner, value, sopd->contents + hh->opd_offset + 16);
2102 bfd_put_64 (sopd->owner, value, sopd->contents + hh->opd_offset + 24);
2108 if (bfd_link_pic (info) && hh->want_opd)
2121 = _bfd_elf_link_lookup_local_dynindx (info, hh->owner,
2122 hh->sym_indx);
2126 rel.r_offset = (hh->opd_offset + sopd->output_offset
2190 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
2206 if (! bfd_link_pic (info) && hh && hh->want_dlt)
2216 if (hh->want_opd)
2218 value = (hh->opd_offset
2238 bfd_put_64 (sdlt->owner, value, sdlt->contents + hh->dlt_offset);
2243 if (hh->want_dlt
2257 = _bfd_elf_link_lookup_local_dynindx (info, hh->owner,
2258 hh->sym_indx);
2263 rel.r_offset = (hh->dlt_offset + sdlt->output_offset
2285 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
2295 if (hh->reloc_entries)
2311 = _bfd_elf_link_lookup_local_dynindx (info, hh->owner,
2312 hh->sym_indx);
2314 for (rent = hh->reloc_entries; rent; rent = rent->next)
2322 && rent->type == R_PARISC_FPTR64 && hh->want_opd)
2353 && rent->type == R_PARISC_FPTR64 && hh->want_opd)
2358 value = (hh->opd_offset
3142 struct elf64_hppa_link_hash_entry *hh = hppa_elf_hash_entry (eh);
3185 value = (hh->stub_offset + hppa_info->stub_sec->output_offset
3219 value = (hh->stub_offset + hppa_info->stub_sec->output_offset
3300 if (hh == NULL)
3367 off = hh->dlt_offset;
3488 value = (hh->plt_offset
3517 BFD_ASSERT (hh != NULL);
3523 value = (hh->dlt_offset
3539 memset (hppa_info->opd_sec->contents + hh->opd_offset, 0, 16);
3544 + hh->opd_offset + 16));
3549 hppa_info->opd_sec->contents + hh->opd_offset + 24);
3552 value = (hh->opd_offset
3558 hppa_info->dlt_sec->contents + hh->dlt_offset);
3565 value = (hh->dlt_offset
3594 value = (hh->dlt_offset
3608 value = (hh->stub_offset + hppa_info->stub_sec->output_offset
3627 value = (hh->stub_offset + hppa_info->stub_sec->output_offset
3646 if (hh == NULL)
3679 off = hh->opd_offset;
3681 if (hh == NULL || hh->want_opd)
3792 /* This is a local symbol, hh defaults to NULL. */