Lines Matching refs:reloc
32 #include "reloc.h"
40 #include "target-reloc.h"
47 #include "aarch64-reloc-property.h"
443 // Add a static reloc for the GOT entry at OFFSET. RELOBJ is an object
488 Static_reloc& reloc(this->static_relocs_[i]);
491 if (!reloc.symbol_is_global())
493 Sized_relobj_file<size, big_endian>* object = reloc.relobj();
495 reloc.relobj()->local_symbol(reloc.index());
509 reloc.index(), reloc.relobj()->name().c_str());
516 const Symbol* gsym = reloc.symbol();
543 unsigned got_offset = reloc.got_offset();
549 switch (reloc.r_type())
921 // Erratum stub class. An erratum stub differs from a reloc stub in that for
923 // stubs, whereas for reloc stubs, different branches insns share a single reloc
924 // stub as long as the branch targets are the same. (More to the point, reloc
1120 // Reloc stub class.
1151 typedef AArch64_relocate_functions<size, big_endian> Reloc;
1152 int64_t adrp_imm = (Reloc::Page(dest) - Reloc::Page(location)) >> 12;
1273 // Addend associated with a reloc.
1495 // Size of reloc stubs.
1578 // reloc stubs and they are in the beginning of the stub table.
2165 reloc section with unexpected symbol table. The
2173 // Ignore reloc section with unexpected entsize or uneven size.
2178 // Ignore reloc section with bad info. This error will be
2902 // local symbol, which is an absolute reloc.
3026 // Add a new reloc argument, returning the index in the vector.
3103 const elfcpp::Rela<size, big_endian>& reloc, unsigned int r_type,
3112 const elfcpp::Rela<size, big_endian>& reloc, unsigned int r_type,
3334 // Get the dynamic reloc section, creating it if necessary.
3351 Symbol* sym, const elfcpp::Rela<size, big_endian>& reloc)
3356 reloc, this->rela_dyn_section(layout));
3376 // relocation routines. The only target specific reloc is
3403 // The dynamic reloc section.
3407 // Relocs saved to avoid a COPY reloc.
3629 // Get the dynamic reloc section, creating it if necessary.
3658 // Make sure we have already created the dynamic reloc section.
3812 typedef typename Reloc_types<sh_type,size,big_endian>::Reloc Reltype;
3825 Reltype reloc(prelocs);
3826 typename elfcpp::Elf_types<size>::Elf_WXword r_info = reloc.get_r_info();
3834 convert_to_section_size_type(reloc.get_r_offset());
3838 reloc.get_r_addend();
4033 // 1st reloc is ADR_PREL_PG_HI21
4040 // 2nd reloc is ADD_ABS_LO12_NC
4053 // 1st reloc is R_AARCH64_PREL64, at offset 8
4264 // The reloc section.
4356 // Every PLT entry needs a reloc.
4384 // Every PLT entry needs a reloc.
4711 // stp x16, x30, [sp, #-16]! Save the reloc and lr on stack.
5870 gold_error(_("%s: unsupported reloc %u against local symbol"),
5905 // This prevents us from issuing more than one error per reloc
5911 object->error(_("requires unsupported dynamic reloc; "
5933 gold_error(_("%s: unsupported TLS reloc %s for IFUNC symbol"),
5976 gold_error(_("%s: unsupported reloc %u in pos independent link."),
6107 gold_error(_("%s: unsupported TLSLE reloc %u in shared code."),
6145 // Generate a double GOT entry with an R_AARCH64_TLSDESC reloc.
6146 // The R_AARCH64_TLSDESC reloc is resolved lazily, so the GOT
6192 gold_error(_("%s: unsupported reloc %u against global symbol %s"),
6253 // Use an IRELATIVE reloc for a locally defined STT_GNU_IFUNC
6349 // Use a GLOB_DAT rather than a RELATIVE reloc if:
6502 gold_error(_("%s: unsupported TLSLE reloc type %u in shared objects."),
6547 gold_error(_("%s: unsupported reloc type in global scan"),
6684 gold_error(_("%s: unsupported REL reloc section"),
6834 typedef AArch64_relocate_functions<size, big_endian> Reloc;
6914 typename Reloc::Status reloc_status = Reloc::STATUS_OKAY;
6931 reloc_status = Reloc::template rela_ua<64>(
6944 reloc_status = Reloc::template rela_ua<32>(
6957 reloc_status = Reloc::template rela_ua<16>(
6962 reloc_status = Reloc::template pcrela_ua<64>(
6967 reloc_status = Reloc::template pcrela_ua<32>(
6972 reloc_status = Reloc::template pcrela_ua<16>(
6977 reloc_status = Reloc::template pcrela_general<32>(
6982 reloc_status = Reloc::adr(view, object, psymval, addend,
6988 reloc_status = Reloc::adrp(view, object, psymval, addend, address,
6998 reloc_status = Reloc::template rela_general<32>(
7011 reloc_status = Reloc::STATUS_OKAY;
7013 // Return false to stop further processing this reloc.
7018 if (Reloc::maybe_apply_stub(r_type, relinfo, rela, view, address,
7025 reloc_status = Reloc::template pcrela_general<32>(
7032 reloc_status = Reloc::adrp(view, value + addend, address);
7038 reloc_status = Reloc::template rela_general<32>(
7079 _("unexpected reloc %u in object file"),
7085 _("unsupported reloc %s"),
7093 case Reloc::STATUS_OKAY:
7095 case Reloc::STATUS_OVERFLOW:
7100 case Reloc::STATUS_BAD_RELOC:
7365 gold_error(_("%s: unsupported reloc %u "
7456 gold_error(_("%s: unsupported TLS reloc %u."),
7513 gold_error(_("unexpected reloc insn sequence while relaxing "
7514 "tls gd to le for reloc %u."), r_type);
7613 gold_error(_("unexpected reloc insn sequence while relaxing "
7614 "tls gd to le for reloc %u."), r_type);
7688 gold_error(_("TLS variable referred by reloc %u is too far from TP."),
7758 gold_error(_("TLS variable referred by reloc %u is too far from TP. "
7782 gold_error(_("unsupported tlsdesc gd_to_le optimization on reloc %u"),
7854 gold_error(_("Don't support tlsdesc gd_to_ie optimization on reloc %u"),