Lines Matching refs:reloc
1877 unsigned int reloc;
1887 #define MAP(str, reloc) { str, sizeof (str) - 1, 1, 1, reloc }
1888 #define MAP32(str, reloc) { str, sizeof (str) - 1, 1, 0, reloc }
1889 #define MAP64(str, reloc) { str, sizeof (str) - 1, 0, 1, reloc }
2012 int reloc = ptr->reloc;
2016 switch (reloc)
2066 if (reloc == (int) BFD_RELOC_PPC64_TOC
2075 return (bfd_reloc_code_real_type) reloc;
2611 bfd_reloc_code_real_type reloc;
2793 * the appropriate variation) reloc against it based on the symbol.
2836 2. The reloc generated must have the TOCDEFN flag set
2837 in upper bit mess of the reloc type.
2878 fixups[fc].reloc = toc_reloc;
2930 bfd_reloc_code_real_type reloc;
2933 if ((reloc = ppc_elf_suffix (&str, &ex)) != BFD_RELOC_NONE)
2934 switch (reloc)
3019 bfd_reloc_code_real_type reloc = BFD_RELOC_NONE;
3036 reloc = BFD_RELOC_NONE;
3039 reloc = BFD_RELOC_PPC_TLSGD;
3044 reloc = BFD_RELOC_PPC_TLSLD;
3047 if (reloc != BFD_RELOC_NONE)
3056 fixups[fc].reloc = reloc;
3064 if ((reloc = ppc_elf_suffix (&str, &ex)) != BFD_RELOC_NONE)
3067 switch (reloc)
3087 reloc = BFD_RELOC_PPC_DTPREL16;
3090 reloc = BFD_RELOC_PPC_TPREL16;
3114 switch (reloc)
3120 reloc = BFD_RELOC_PPC_VLE_SDA21;
3125 reloc = BFD_RELOC_PPC_VLE_LO16D;
3127 reloc = BFD_RELOC_PPC_VLE_LO16A;
3132 reloc = BFD_RELOC_PPC_VLE_HI16D;
3134 reloc = BFD_RELOC_PPC_VLE_HI16A;
3139 reloc = BFD_RELOC_PPC_VLE_HA16D;
3141 reloc = BFD_RELOC_PPC_VLE_HA16A;
3146 reloc = BFD_RELOC_PPC_VLE_SDAREL_LO16D;
3151 reloc = BFD_RELOC_PPC_VLE_SDAREL_HI16D;
3156 reloc = BFD_RELOC_PPC_VLE_SDAREL_HA16D;
3163 if (reloc != BFD_RELOC_NONE)
3165 /* Determine a BFD reloc value based on the operand information.
3172 reloc = BFD_RELOC_PPC_B26;
3177 reloc = BFD_RELOC_PPC_B16;
3181 reloc = BFD_RELOC_PPC_VLE_REL8;
3185 reloc = BFD_RELOC_PPC_VLE_REL15;
3189 reloc = BFD_RELOC_PPC_VLE_REL24;
3194 reloc = BFD_RELOC_16;
3200 reloc = BFD_RELOC_PPC_TOC16;
3213 switch (reloc)
3216 reloc = BFD_RELOC_PPC_BA26;
3219 reloc = BFD_RELOC_PPC_BA16;
3223 reloc = BFD_RELOC_PPC_BA16_BRTAKEN;
3226 reloc = BFD_RELOC_PPC_BA16_BRNTAKEN;
3235 switch (reloc)
3252 switch (reloc)
3255 reloc = BFD_RELOC_PPC64_ADDR16_DS;
3258 reloc = BFD_RELOC_PPC64_ADDR16_LO_DS;
3261 reloc = BFD_RELOC_PPC64_GOT16_DS;
3264 reloc = BFD_RELOC_PPC64_GOT16_LO_DS;
3267 reloc = BFD_RELOC_PPC64_PLT16_LO_DS;
3270 reloc = BFD_RELOC_PPC64_SECTOFF_DS;
3273 reloc = BFD_RELOC_PPC64_SECTOFF_LO_DS;
3276 reloc = BFD_RELOC_PPC64_TOC16_DS;
3279 reloc = BFD_RELOC_PPC64_TOC16_LO_DS;
3282 reloc = BFD_RELOC_PPC64_PLTGOT16_DS;
3285 reloc = BFD_RELOC_PPC64_PLTGOT16_LO_DS;
3288 reloc = BFD_RELOC_PPC64_DTPREL16_DS;
3291 reloc = BFD_RELOC_PPC64_DTPREL16_LO_DS;
3294 reloc = BFD_RELOC_PPC64_TPREL16_DS;
3297 reloc = BFD_RELOC_PPC64_TPREL16_LO_DS;
3316 fixups[fc].reloc = reloc;
3432 if (fixups[i].reloc != BFD_RELOC_NONE)
3438 reloc_howto = bfd_reloc_type_lookup (stdoutput, fixups[i].reloc);
3453 fixups[i].reloc);
6171 given a PC relative reloc. */
6183 a symbol in the TOC subsegment into a reloc against the
6231 /* Possibly adjust the reloc to be against the csect. */
6237 /* Don't adjust if this is a reloc in the toc section. */
6258 /* Adjust a reloc against a .lcomm symbol to be against the base
6272 /* A reloc from one csect to another must be kept. The assembler
6521 going to use the symbol value. That means that if the reloc is
6524 However, if the reloc is not fully resolved we do not want to
6554 does not generate a reloc. It uses the offset of `sym' within its
6571 /* During parsing of instructions, a TOC16 reloc is generated for
6801 /* powerpc uses RELA style relocs, so if emitting a reloc the field
7007 _("Gas failure, reloc value %d\n"), fixP->fx_r_type);
7107 /* PowerPC uses RELA relocs, ie. the reloc addend is stored separately
7108 from the section contents. If we are going to be emitting a reloc
7143 /* Generate a reloc for a fixup. */
7148 arelent *reloc;
7150 reloc = (arelent *) xmalloc (sizeof (arelent));
7152 reloc->sym_ptr_ptr = (asymbol **) xmalloc (sizeof (asymbol *));
7153 *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy);
7154 reloc->address = fixp->fx_frag->fr_address + fixp->fx_where;
7155 reloc->howto = bfd_reloc_type_lookup (stdoutput, fixp->fx_r_type);
7156 if (reloc->howto == (reloc_howto_type *) NULL)
7159 _("reloc %d not supported by object file format"),
7163 reloc->addend = fixp->fx_addnumber;
7165 return reloc;