/freebsd/contrib/llvm-project/lld/ELF/ |
H A D | Thunks.cpp | 55 class AArch64Thunk : public Thunk { 57 AArch64Thunk(Symbol &dest, int64_t addend) : Thunk(dest, addend) {} in AArch64Thunk() 96 class ARMThunk : public Thunk { 98 ARMThunk(Symbol &dest, int64_t addend) : Thunk(dest, addend) {} in ARMThunk() 126 class ThumbThunk : public Thunk { 128 ThumbThunk(Symbol &dest, int64_t addend) : Thunk(dest, addend) { in ThumbThunk() 307 class AVRThunk : public Thunk { 309 AVRThunk(Symbol &dest, int64_t addend) : Thunk(dest, addend) {} in AVRThunk() 316 class MipsThunk final : public Thunk { 318 MipsThunk(Symbol &dest) : Thunk(dest, 0) {} in MipsThunk() [all …]
|
H A D | Thunks.h | 29 class Thunk { 31 Thunk(Symbol &destination, int64_t addend); 32 virtual ~Thunk(); 70 Thunk *addThunk(const InputSection &isec, Relocation &rel);
|
H A D | Relocations.h | 154 class Thunk; variable 173 std::pair<Thunk *, bool> getThunk(InputSection *isec, Relocation &rel, 188 std::vector<Thunk *>> 190 llvm::DenseMap<std::pair<Symbol *, int64_t>, std::vector<Thunk *>> 195 llvm::DenseMap<Symbol *, Thunk *> thunks;
|
H A D | Relocations.cpp | 2218 std::pair<Thunk *, bool> ThunkCreator::getThunk(InputSection *isec, in getThunk() 2220 std::vector<Thunk *> *thunkVec = nullptr; in getThunk() 2241 for (Thunk *t : *thunkVec) in getThunk() 2249 Thunk *t = addThunk(*isec, rel); in getThunk() 2259 if (Thunk *t = thunks.lookup(rel.sym)) { in normalizeExistingThunk() 2324 Thunk *t; in createThunks()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64Arm64ECCallLowering.cpp | 517 Function *Thunk = Function::Create(X64Ty, GlobalValue::LinkOnceODRLinkage, 0, in buildEntryThunk() local 519 Thunk->setCallingConv(CallingConv::ARM64EC_Thunk_X64); in buildEntryThunk() 520 Thunk->setSection(".wowthk$aa"); in buildEntryThunk() 521 Thunk->setComdat(M->getOrInsertComdat(EntryThunkName)); in buildEntryThunk() 523 Thunk->addFnAttr("frame-pointer", "all"); in buildEntryThunk() 525 BasicBlock *BB = BasicBlock::Create(M->getContext(), "", Thunk); in buildEntryThunk() 534 (F->isVarArg() ? 5 : Thunk->arg_size()) - ThunkArgOffset; in buildEntryThunk() 540 Value *Arg = Thunk->getArg(i + ThunkArgOffset); in buildEntryThunk() 565 Thunk->addParamAttr(5, Attribute::InReg); in buildEntryThunk() 566 Value *Arg = Thunk->getArg(5); in buildEntryThunk() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/DebugInfo/CodeView/ |
H A D | SymbolRecordHelpers.cpp | 40 Thunk32Sym Thunk = createRecord<Thunk32Sym>(Sym); in getScopeEndOffset() local 41 return Thunk.End; in getScopeEndOffset() 71 Thunk32Sym Thunk = createRecord<Thunk32Sym>(Sym); in getScopeParentOffset() local 72 return Thunk.Parent; in getScopeParentOffset()
|
H A D | SymbolRecordMapping.cpp | 59 Error SymbolRecordMapping::visitKnownRecord(CVSymbol &CVR, Thunk32Sym &Thunk) { in visitKnownRecord() argument 61 error(IO.mapInteger(Thunk.Parent)); in visitKnownRecord() 62 error(IO.mapInteger(Thunk.End)); in visitKnownRecord() 63 error(IO.mapInteger(Thunk.Next)); in visitKnownRecord() 64 error(IO.mapInteger(Thunk.Offset)); in visitKnownRecord() 65 error(IO.mapInteger(Thunk.Segment)); in visitKnownRecord() 66 error(IO.mapInteger(Thunk.Length)); in visitKnownRecord() 67 error(IO.mapEnum(Thunk.Thunk)); in visitKnownRecord() 68 error(IO.mapStringZ(Thunk in visitKnownRecord() [all...] |
H A D | SymbolDumper.cpp | 133 Error CVSymbolDumperImpl::visitKnownRecord(CVSymbol &CVR, Thunk32Sym &Thunk) { in visitKnownRecord() argument 134 W.printString("Name", Thunk.Name); in visitKnownRecord() 135 W.printNumber("Parent", Thunk.Parent); in visitKnownRecord() 136 W.printNumber("End", Thunk.End); in visitKnownRecord() 137 W.printNumber("Next", Thunk.Next); in visitKnownRecord() 138 W.printNumber("Off", Thunk.Offset); in visitKnownRecord() 139 W.printNumber("Seg", Thunk.Segment); in visitKnownRecord() 140 W.printNumber("Len", Thunk.Length); in visitKnownRecord() 141 W.printEnum("Ordinal", uint8_t(Thunk.Thunk), getThunkOrdinalName in visitKnownRecord() [all...] |
/freebsd/contrib/llvm-project/clang/lib/CodeGen/ |
H A D | CGVTables.cpp | 41 static void setThunkProperties(CodeGenModule &CGM, const ThunkInfo &Thunk, in setThunkProperties() argument 46 !Thunk.Return.isEmpty()); in setThunkProperties() 72 const ThunkInfo &Thunk) { in PerformReturnAdjustment() argument 98 ClassDecl, Thunk.Return); in PerformReturnAdjustment() 168 GlobalDecl GD, const ThunkInfo &Thunk) { in GenerateVarArgsThunk() argument 223 const CXXRecordDecl *ThisValueClass = Thunk.ThisType->getPointeeCXXRecordDecl(); in GenerateVarArgsThunk() 225 *this, ThisPtr, ThisValueClass, Thunk); in GenerateVarArgsThunk() 230 if (!Thunk.Return.isEmpty()) { in GenerateVarArgsThunk() 238 RV = PerformReturnAdjustment(*this, ResultType, RV, Thunk); in GenerateVarArgsThunk() 305 const ThunkInfo *Thunk, in EmitCallAndReturnForThunk() argument [all …]
|
/freebsd/contrib/llvm-project/clang/lib/AST/ |
H A D | VTableBuilder.cpp | 891 void AddThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk); 1072 const ThunkInfo &Thunk) { in AddThunk() argument 1079 if (llvm::is_contained(ThunksVector, Thunk)) in AddThunk() 1082 ThunksVector.push_back(Thunk); in AddThunk() 1198 const ThunkInfo &Thunk = TI.second; in ComputeThisAdjustments() local 1216 AddThunk(MD, Thunk); in ComputeThisAdjustments() 2030 ThunkInfo Thunk = VTableThunks.lookup(I); in dumpLayout() local 2031 if (!Thunk.isEmpty()) { in dumpLayout() 2033 if (!Thunk.Return.isEmpty()) { in dumpLayout() 2035 Out << Thunk.Return.NonVirtual << " non-virtual"; in dumpLayout() [all …]
|
H A D | MicrosoftMangle.cpp | 161 void mangleThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk, 164 const ThunkInfo &Thunk, bool ElideOverrideInfo, 3791 const ThunkInfo &Thunk, in mangleThunk() argument 3802 AccessSpecifier AS = Thunk.Return.isEmpty() ? MD->getAccess() : AS_public; in mangleThunk() 3803 mangleThunkThisAdjustment(AS, Thunk.This, Mangler, MHO); in mangleThunk() 3805 if (!Thunk.Return.isEmpty()) in mangleThunk() 3806 assert(Thunk.Method != nullptr && in mangleThunk() 3809 const CXXMethodDecl *DeclForFPT = Thunk.Method ? Thunk.Method : MD; in mangleThunk() 3816 const ThunkInfo &Thunk, in mangleCXXDtorThunk() argument 3827 auto &Adjustment = Thunk.This; in mangleCXXDtorThunk()
|
H A D | ItaniumMangle.cpp | 102 void mangleThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk, bool, 105 const ThunkInfo &Thunk, bool, raw_ostream &) override; 7071 const ThunkInfo &Thunk) { in mangleOverrideDiscrimination() argument 7073 const CXXRecordDecl *ThisRD = Thunk.ThisType->getPointeeCXXRecordDecl(); in mangleOverrideDiscrimination() 7124 const ThunkInfo &Thunk, in mangleThunk() argument 7138 if (!Thunk.Return.isEmpty()) in mangleThunk() 7142 Mangler.mangleCallOffset(Thunk.This.NonVirtual, in mangleThunk() 7143 Thunk.This.Virtual.Itanium.VCallOffsetOffset); in mangleThunk() 7146 if (!Thunk.Return.isEmpty()) in mangleThunk() 7147 Mangler.mangleCallOffset(Thunk.Return.NonVirtual, in mangleThunk() [all …]
|
/freebsd/contrib/llvm-project/llvm/tools/llvm-pdbutil/ |
H A D | MinimalSymbolDumper.cpp | 437 Error MinimalSymbolDumper::visitKnownRecord(CVSymbol &CVR, Thunk32Sym &Thunk) { in visitKnownRecord() argument 438 P.format(" `{0}`", Thunk.Name); in visitKnownRecord() 440 P.formatLine("parent = {0}, end = {1}, next = {2}", Thunk.Parent, Thunk.End, in visitKnownRecord() 441 Thunk.Next); in visitKnownRecord() 443 formatThunkOrdinal(Thunk.Thunk), Thunk.Length, in visitKnownRecord() 444 formatSegmentOffset(Thunk.Segment, Thunk.Offset)); in visitKnownRecord()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/ |
H A D | MipsCallLowering.cpp | 107 std::function<void()> *Thunk = nullptr) override; 169 std::function<void()> *Thunk) { in assignCustomValue() argument 214 std::function<void()> *Thunk) override; 261 std::function<void()> *Thunk) { in assignCustomValue() argument 281 if (Thunk) { in assignCustomValue() 282 *Thunk = [=]() { in assignCustomValue()
|
/freebsd/contrib/llvm-project/clang/lib/InstallAPI/ |
H A D | Visitor.cpp | 451 const GlobalDecl &D, const ThunkInfo &Thunk, bool ElideOverrideInfo) const { in getMangledCXXThunk() argument 456 MC->mangleCXXDtorThunk(Dtor, D.getDtorType(), Thunk, ElideOverrideInfo, in getMangledCXXThunk() 459 MC->mangleThunk(Method, Thunk, ElideOverrideInfo, NameStream); in getMangledCXXThunk() 502 for (const auto &Thunk : *Thunks) { in emitVTableSymbols() 504 getMangledCXXThunk(GD, Thunk, /*ElideOverrideInfo=*/true); in emitVTableSymbols()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/DebugInfo/PDB/ |
H A D | PDBSymbolThunk.h | 20 DECLARE_PDB_SYMBOL_CONCRETE_TYPE(PDB_SymType::Thunk)
|
H A D | PDBExtras.h | 32 raw_ostream &operator<<(raw_ostream &OS, const codeview::ThunkOrdinal &Thunk);
|
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
H A D | ARMCallLowering.cpp | 143 std::function<void()> *Thunk) override { in assignCustomValue() 171 if (Thunk) { in assignCustomValue() 172 *Thunk = [=]() { in assignCustomValue() 319 std::function<void()> *Thunk) override { in assignCustomValue()
|
/freebsd/contrib/llvm-project/clang/include/clang/InstallAPI/ |
H A D | Visitor.h | 63 std::string getMangledCXXThunk(const GlobalDecl &D, const ThunkInfo &Thunk,
|
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/GISel/ |
H A D | RISCVCallLowering.cpp | 121 std::function<void()> *Thunk) override { in assignCustomValue() 155 if (Thunk) { in assignCustomValue() 156 *Thunk = assignFunc; in assignCustomValue() 247 std::function<void()> *Thunk) override { in assignCustomValue()
|
/freebsd/contrib/llvm-project/clang/include/clang/AST/ |
H A D | Mangle.h | 133 virtual void mangleThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk, 136 const ThunkInfo &Thunk,
|
/freebsd/contrib/llvm-project/llvm/lib/DebugInfo/PDB/ |
H A D | PDBExtras.cpp | 190 const codeview::ThunkOrdinal &Thunk) { in operator <<() argument 191 switch (Thunk) { in operator <<() 273 CASE_OUTPUT_ENUM_CLASS_NAME(PDB_SymType, Thunk, OS) in operator <<()
|
H A D | PDBSymbol.cpp | 92 FACTORY_SYMTAG_CASE(Thunk, PDBSymbolThunk) in createSymbol()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
H A D | DebugInfoFlags.def | 56 HANDLE_DI_FLAG((1 << 25), Thunk)
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
H A D | CallLowering.cpp | 768 std::function<void()> Thunk; in handleAssignments() local 770 Args[i], ArrayRef(ArgLocs).slice(j), &Thunk); in handleAssignments() 771 if (Thunk) in handleAssignments() 772 DelayedOutgoingRegAssignments.emplace_back(Thunk); in handleAssignments()
|