Home
last modified time | relevance | path

Searched full:relocation (Results 1 – 25 of 688) sorted by relevance

12345678910>>...28

/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/MCTargetDesc/
H A DMipsMCCodeEmitter.h58 // target operand. If the machine operand requires relocation,
59 // record the relocation and return zero.
65 // target operand. If the machine operand requires relocation,
66 // record the relocation and return zero.
92 // target operand. If the machine operand requires relocation,
93 // record the relocation and return zero.
99 // target operand. If the machine operand requires relocation,
100 // record the relocation and return zero.
106 // target operand. If the machine operand requires relocation,
107 // record the relocation an
[all...]
H A DMipsELFObjectWriter.cpp37 /// Holds additional information needed by the relocation ordering algorithm.
39 const ELFRelocationEntry R; ///< The relocation.
40 bool Matched = false; ///< Is this relocation part of a match.
134 /// Determine the low relocation that matches the given relocation.
135 /// If the relocation does not need a low relocation then the return value
164 /// Determine whether a relocation (X) matches the one given in R.
166 /// A relocation matches if:
175 /// A matching relocation is unbeatable if:
194 /// A matching relocation is a better match if:
221 // Determine the type of the relocation. in getRelocType()
[all …]
/freebsd/contrib/elftoolchain/libdwarf/
H A Ddwarf_get_relocation_info.332 .Nd retrieve generated relocation arrays
49 is used to retrieve the relocation arrays generated by a prior call to
52 Each call to this function retrieves the next available relocation
55 the relocation arrays.
56 The total number of generated relocation arrays retrievable
73 of the relocation section to which the retrieved relocation array
79 the ELF section to which the retrieved relocation array applies.
84 relocation entries contained in the relocation array.
89 retrieved array of relocation entries.
96 The retrieved relocation entries are described using structure
[all …]
H A Ddwarf_add_arange.379 relocation.
84 relocation.
98 Application code can retrieve the relocation entries for the
101 The relocation entry for the first symbol will have type
103 and the relocation entry for the second symbol will have type
110 will be ignored and only one symbol is used for relocation.
124 and supports only one relocation symbol.
H A Ddwarf_set_reloc_application.332 .Nd set a library-wide relocation flag
44 allows applications to specify how relocation information is to be
53 relocation sections and will apply the relocation records found to
60 The default behaviour of the library is to process relocation records.
73 returns the previous value of the library-wide relocation application
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/MCTargetDesc/
H A DARMFixupKinds.h17 // 12-bit PC relative relocation for symbol addresses
23 // 10-bit PC relative relocation for symbol addresses used in
26 // 10-bit PC relative relocation for symbol addresses used in VFP instructions
33 // 9-bit PC relative relocation for symbol addresses used in VFP instructions
41 // 10-bit PC relative relocation for symbol addresses where the lower 2 bits
44 // 12-bit PC relative relocation for the ADR instruction.
46 // 12-bit PC relative relocation for the ADR instruction.
48 // 24-bit PC relative relocation for conditional branch instructions.
50 // 24-bit PC relative relocation for branch instructions. (unconditional)
52 // 20-bit PC relative relocation fo
[all...]
H A DARMMachObjectWriter.cpp143 "' in resulting scattered relocation."); in recordARMScatteredHalfRelocation()
175 // Select the appropriate difference relocation type. in recordARMScatteredHalfRelocation()
194 // relocation entry in the low 16 bits of r_address field. in recordARMScatteredHalfRelocation()
202 // relocation, but it will be set in FixedValue if the base symbol in recordARMScatteredHalfRelocation()
253 "' in resulting scattered relocation."); in recordARMScatteredRelocation()
285 // Select the appropriate difference relocation type. in recordARMScatteredRelocation()
331 // relocation that explicitly mentions the function. Not a problem if it's in requiresExternRelocation()
333 // external relocation there causes more issues. in requiresExternRelocation()
348 // BL/BLX also use external relocations when an internal relocation in requiresExternRelocation()
353 // If the resultant value would be out of range for an internal relocation, in requiresExternRelocation()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/
H A DRuntimeDyldCOFFThumb.h89 report_fatal_error("Unknown symbol in relocation"); in processRelocationRef()
104 // Determine the Addend used to adjust the relocation value. in processRelocationRef()
152 // We need to find out if the relocation is relative to a thumb function in processRelocationRef()
153 // so that we include the ISA selection bit when resolve the relocation in processRelocationRef()
157 default: llvm_unreachable("unsupported relocation type"); in processRelocationRef()
159 // This relocation is ignored. in processRelocationRef()
214 default: llvm_unreachable("unsupported relocation type"); in resolveRelocation()
216 // This relocation is ignored. in resolveRelocation()
225 assert(Result <= UINT32_MAX && "relocation overflow"); in resolveRelocation()
239 assert(Result <= UINT32_MAX && "relocation overflo in resolveRelocation()
[all...]
H A DRuntimeDyldMachOAArch64.h39 // Verify that the relocation has the correct size and alignment. in decodeAddend()
45 ErrStream << "Unsupported relocation type: " in decodeAddend()
57 ErrStream << "Invalid relocation size for relocation " in decodeAddend()
70 assert(NumBytes == 4 && "Invalid relocation size."); in decodeAddend()
78 llvm_unreachable("Unsupported relocation type!"); in decodeAddend()
88 // Verify that the relocation points to a B/BL instruction. in decodeAddend()
103 // Verify that the relocation points to the expected adrp instruction. in decodeAddend()
115 // Verify that the relocation points to one of the expected load / store in decodeAddend()
124 // Verify that the relocation points to one of the expected load / store in decodeAddend()
157 // Verify that the relocation has the correct alignment. in encodeAddend()
[all …]
H A DRuntimeDyldCOFFX86_64.h52 assert(Result <= UINT32_MAX && "Relocation overflow"); in write32BitOffset()
67 // The target location for the relocation is described by RE.SectionID and
82 // relocation to be applied. For relocations which refer to symbols in the
105 assert(((int64_t)Result <= INT32_MAX) && "Relocation overflow"); in resolveRelocation()
106 assert(((int64_t)Result >= INT32_MIN) && "Relocation underflow"); in resolveRelocation()
117 report_fatal_error("IMAGE_REL_AMD64_ADDR32NB relocation requires an " in resolveRelocation()
131 assert(static_cast<int64_t>(RE.Addend) <= INT32_MAX && "Relocation overflow"); in resolveRelocation()
132 assert(static_cast<int64_t>(RE.Addend) >= INT32_MIN && "Relocation underflow"); in resolveRelocation()
138 assert(static_cast<int16_t>(RE.SectionID) <= INT16_MAX && "Relocation overflow"); in resolveRelocation()
139 assert(static_cast<int16_t>(RE.SectionID) >= INT16_MIN && "Relocation underflo in resolveRelocation()
[all...]
H A DRuntimeDyldCOFFI386.h45 report_fatal_error("Unknown symbol in relocation"); in processRelocationRef()
78 // Determine the Addend used to adjust the relocation value. in processRelocationRef()
111 // This relocation is ignored. in processRelocationRef()
135 llvm_unreachable("unsupported relocation type"); in processRelocationRef()
148 // This relocation is ignored. in resolveRelocation()
157 assert(Result <= UINT32_MAX && "relocation overflow"); in resolveRelocation()
172 assert(Result <= UINT32_MAX && "relocation overflow"); in resolveRelocation()
188 "relocation overflow"); in resolveRelocation()
190 "relocation underflow"); in resolveRelocation()
202 "relocation overflo in resolveRelocation()
[all...]
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/
H A DX86MachObjectWriter.cpp115 // Compensate for the relocation offset, Darwin x86_64 relocations only have in RecordX86_64Relocation()
118 // following the relocation are not accommodated for (see comment below in RecordX86_64Relocation()
128 // it. I think it would require a local relocation, but I'm not sure if that in RecordX86_64Relocation()
129 // would work either. The official way to get an absolute PCrel relocation in RecordX86_64Relocation()
149 "unsupported relocation of modified symbol"); in RecordX86_64Relocation()
157 Fixup.getLoc(), "unsupported pc-relative relocation of difference"); in RecordX86_64Relocation()
162 // require a local relocation is handled just like if the symbols were in RecordX86_64Relocation()
166 // relocation entries. in RecordX86_64Relocation()
169 // single SIGNED relocation); reject it for now. Except the case where both in RecordX86_64Relocation()
173 Fixup.getLoc(), "unsupported relocation with identical base"); in RecordX86_64Relocation()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/BinaryFormat/ELFRelocs/
H A DLanai.def6 // No relocation
8 // 21-bit symbol relocation
10 // 21-bit symbol relocation with last two bits masked to 0
14 // General 32-bit relocation
16 // Upper 16-bits of a symbolic relocation
18 // Lower 16-bits of a symbolic relocation
/freebsd/contrib/llvm-project/llvm/lib/Target/Lanai/MCTargetDesc/
H A DLanaiFixupKinds.h16 // Although most of the current fixup types reflect a unique relocation
17 // one can have multiple fixup types for a given relocation and thus need
28 FIXUP_LANAI_21, // 21-bit symbol relocation
29 FIXUP_LANAI_21_F, // 21-bit symbol relocation, last two bits masked to 0
31 FIXUP_LANAI_32, // general 32-bit relocation
32 FIXUP_LANAI_HI16, // upper 16-bits of a symbolic relocation
33 FIXUP_LANAI_LO16, // lower 16-bits of a symbolic relocation
/freebsd/contrib/llvm-project/llvm/include/llvm/BinaryFormat/
H A DDynamicTags.def46 DYNAMIC_TAG(PLTRELSZ, 2) // Size of relocation entries in PLT.
51 DYNAMIC_TAG(RELA, 7) // Address of relocation table (Rela entries).
52 DYNAMIC_TAG(RELASZ, 8) // Size of Rela relocation table.
53 DYNAMIC_TAG(RELAENT, 9) // Size of a Rela relocation entry.
61 DYNAMIC_TAG(REL, 17) // Address of relocation table (Rel entries).
62 DYNAMIC_TAG(RELSZ, 18) // Size of Rel relocation table.
63 DYNAMIC_TAG(RELENT, 19) // Size of a Rel relocation entry.
64 DYNAMIC_TAG(PLTREL, 20) // Type of relocation entry used for linking.
85 DYNAMIC_TAG(RELRSZ, 35) // Size of Relr relocation table.
86 DYNAMIC_TAG(RELR, 36) // Address of relocation table (Relr entries).
[all …]
H A DXCOFF.h79 F_RELFLG = 0x0001, ///< relocation info stripped from file
261 // Relocation types, defined in `/usr/include/reloc.h`.
263 R_POS = 0x00, ///< Positive relocation. Provides the address of the referenced
265 R_RL = 0x0c, ///< Positive indirect load relocation. Modifiable instruction.
266 R_RLA = 0x0d, ///< Positive load address relocation. Modifiable instruction.
268 R_NEG = 0x01, ///< Negative relocation. Provides the negative of the address
270 R_REL = 0x02, ///< Relative to self relocation. Provides a displacement value
274 R_TOC = 0x03, ///< Relative to the TOC relocation. Provides a displacement
277 R_TRL = 0x12, ///< TOC relative indirect load relocation. Similar to R_TOC,
282 ///< relocation. Compilers are not permitted to generate this
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/MCTargetDesc/
H A DAArch64MachObjectWriter.cpp98 // This encompasses the relocation for the whole 21-bit value. in getAArch64FixupKindMachOInfo()
164 // AArch64 pcrel relocation addends do not include the section offset. in recordRelocation()
190 "Invalid relocation on conditional branch!"); in recordRelocation()
209 "PC relative absolute relocation!"); in recordRelocation()
229 // SymB is the PC, so use a PC-rel pointer-to-GOT relocation. in recordRelocation()
241 "unsupported relocation of modified symbol"); in recordRelocation()
248 "unsupported pc-relative relocation of " in recordRelocation()
262 "unsupported relocation of local symbol '" + A->getName() + in recordRelocation()
269 "unsupported relocation of local symbol '" + B->getName() + in recordRelocation()
276 Fixup.getLoc(), "unsupported relocation with identical base"); in recordRelocation()
[all …]
/freebsd/contrib/llvm-project/lld/ELF/
H A DRelocations.cpp15 // reading records from relocation sections and applying them to output.
21 // fixing addresses in relocation processing.
38 // It instead stores Relocation objects to InputSection's Relocations
99 void elf::reportRangeError(uint8_t *loc, const Relocation &rel, const Twine &v, in reportRangeError()
125 errorOrWarn(errPlace.loc + "relocation " + lld::toString(rel.type) + in reportRangeError()
170 // In case of global symbol, the R_MIPS_GOT16 relocation does not in getMipsPairType()
173 // relocation loads an address of the symbol. In case of local in getMipsPairType()
174 // symbol, the R_MIPS_GOT16 relocation creates a GOT entry to hold in getMipsPairType()
284 // them are copied by a copy relocation, all of them need to be copied.
313 // effectively a defined symbol. In the case of copy relocation the symbol is
[all …]
H A DARMErrataFix.cpp90 // A label for the start of the Patch that we can use as a relocation target.
153 // address. This is only used when the branch instruction has no relocation.
183 // If we have a relocation then apply it. in writeTo()
189 // If we don't have a relocation then we must calculate and write the offset in writeTo()
207 uint32_t instr, const Relocation *r) { in branchDestInFirstRegion()
211 // If there is a branch relocation at the same offset we must use this to in branchDestInFirstRegion()
219 // If there is no relocation, we must have an intra-section branch in branchDestInFirstRegion()
246 // Branch relocation at off. Will be nullptr if no relocation exists.
247 Relocation *rel;
281 // Find a relocation for the branch if it exists. This will be used in scanCortexA8Errata657417()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/ExecutionEngine/JITLink/
H A Driscv.h27 /// A plain 32-bit pointer value relocation
34 /// A plain 64-bit pointer value relocation
41 /// PC-relative branch pointer value relocation
48 /// High 20 bits of PC-relative jump pointer value relocation
73 /// High 20 bits of PC relative relocation
79 /// Low 12 bits of PC relative relocation, used by I type instruction format
85 /// Low 12 bits of PC relative relocation, used by S type instruction format
91 /// High 20 bits of 32-bit pointer value relocation
97 /// Low 12 bits of 32-bit pointer value relocation
103 /// Low 12 bits of 32-bit pointer value relocation, use
[all...]
/freebsd/contrib/llvm-project/llvm/lib/Target/VE/MCTargetDesc/
H A DVEELFObjectWriter.cpp55 "1-byte pc-relative data relocation is not supported"); in getRelocType()
60 "2-byte pc-relative data relocation is not supported"); in getRelocType()
68 "8-byte pc-relative data relocation is not supported"); in getRelocType()
82 Ctx.reportError(Fixup.getLoc(), "Unknown ELF relocation type"); in getRelocType()
85 Ctx.reportError(Fixup.getLoc(), "1-byte data relocation is not supported"); in getRelocType()
88 Ctx.reportError(Fixup.getLoc(), "2-byte data relocation is not supported"); in getRelocType()
98 "A non pc-relative srel32 relocation is not supported"); in getRelocType()
106 "A non pc-relative pc_hi32 relocation is not supported"); in getRelocType()
110 "A non pc-relative pc_lo32 relocation is not supported"); in getRelocType()
/freebsd/contrib/llvm-project/llvm/lib/Object/
H A DRelocationResolver.cpp72 llvm_unreachable("Invalid relocation type"); in resolveX86_64()
103 llvm_unreachable("Invalid relocation type"); in resolveAArch64()
125 llvm_unreachable("Invalid relocation type"); in resolveBPF()
153 llvm_unreachable("Invalid relocation type"); in resolveMips64()
175 llvm_unreachable("Invalid relocation type"); in resolveMSP430()
203 llvm_unreachable("Invalid relocation type"); in resolvePPC64()
225 llvm_unreachable("Invalid relocation type"); in resolveSystemZ()
250 llvm_unreachable("Invalid relocation type"); in resolveSparc64()
284 llvm_unreachable("Invalid relocation type"); in resolveAmdgpu()
309 llvm_unreachable("Invalid relocation typ in resolveX86()
[all...]
/freebsd/contrib/llvm-project/lld/ELF/Arch/
H A DAArch64.cpp50 void relocate(uint8_t *loc, const Relocation &rel,
56 void relaxTlsGdToLe(uint8_t *loc, const Relocation &rel, uint64_t val) const;
57 void relaxTlsGdToIe(uint8_t *loc, const Relocation &rel, uint64_t val) const;
58 void relaxTlsIeToLe(uint8_t *loc, const Relocation &rel, uint64_t val) const;
64 AArch64Relaxer(ArrayRef<Relocation> relocs);
65 bool tryRelaxAdrpAdd(const Relocation &adrpRel, const Relocation &addRel,
67 bool tryRelaxAdrpLdr(const Relocation &adrpRel, const Relocation &ldrRel,
183 error(getErrorLocation(loc) + "unknown relocation (" + Twine(type) + in getRelExpr()
243 // The following relocation types all point at instructions, and in getImplicitAddend()
247 // says: "If the relocation relocates an instruction the immediate in getImplicitAddend()
[all …]
H A DPPC.cpp50 void relocate(uint8_t *loc, const Relocation &rel,
57 void relaxTlsGdToIe(uint8_t *loc, const Relocation &rel, uint64_t val) const;
58 void relaxTlsGdToLe(uint8_t *loc, const Relocation &rel, uint64_t val) const;
59 void relaxTlsLdToLe(uint8_t *loc, const Relocation &rel, uint64_t val) const;
60 void relaxTlsIeToLe(uint8_t *loc, const Relocation &rel, uint64_t val) const;
215 llvm_unreachable("unsupported relocation type used in branch"); in inBranchRange()
266 error(getErrorLocation(loc) + "unknown relocation (" + Twine(type) + in getRelExpr()
294 "cannot read addend for relocation " + toString(type)); in fromDTPREL()
317 void PPC::relocate(uint8_t *loc, const Relocation &rel, uint64_t val) const { in relocate()
382 llvm_unreachable("unknown relocation"); in adjustTlsExpr()
[all...]
/freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/RuntimeDyld/
H A DRuntimeDyldImpl.h41 return make_error<RuntimeDyldError>("Unimplemented relocation: " #RelType)
122 /// Addend - the relocation addend encoded in the instruction itself. Also
123 /// used to make a relocation section relative instead of symbol relative.
126 /// SectionID - the section this relocation points to.
129 /// RelType - relocation type.
137 /// SymOffset - Section offset of the relocation entry's symbol (used for GOT
144 /// The size of this relocation (MachO specific).
147 /// True if this is a PCRel relocation (MachO specific).
272 // The symbol (or section) the relocation is sourced from is the Key
273 // in the relocation list where it's stored.
[all …]

12345678910>>...28