Home
last modified time | relevance | path

Searched refs:GlobalIFunc (Results 1 – 25 of 43) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DGlobalIFunc.h1 //===-------- llvm/GlobalIFunc.h - GlobalIFunc class ------------*- C++ -*-===//
10 /// This file contains the declaration of the GlobalIFunc class, which
31 // Traits class for using GlobalIFunc in symbol table in Module.
34 class GlobalIFunc final : public GlobalObject, public ilist_node<GlobalIFunc> {
35 friend class SymbolTableListTraits<GlobalIFunc>;
37 GlobalIFunc(Type *Ty, unsigned AddressSpace, LinkageTypes Linkage,
41 GlobalIFunc(const GlobalIFunc
[all...]
H A DModule.h76 using IFuncListType = SymbolTableList<GlobalIFunc>;
497 GlobalIFunc *getNamedIFunc(StringRef Name) const;
630 void removeIFunc(GlobalIFunc *IFunc) { IFuncList.remove(IFunc); } in removeIFunc()
632 void eraseIFunc(GlobalIFunc *IFunc) { IFuncList.erase(IFunc); } in eraseIFunc()
634 void insertIFunc(GlobalIFunc *IFunc) { IFuncList.push_back(IFunc); } in insertIFunc()
665 static IFuncListType Module::*getSublistAccess(GlobalIFunc*) { in getSublistAccess() argument
668 friend class llvm::SymbolTableListTraits<llvm::GlobalIFunc>;
H A DValueSymbolTable.h27 class GlobalIFunc; variable
44 friend class SymbolTableListTraits<GlobalIFunc>;
H A DSymbolTableListTraits.h37 class GlobalIFunc; variable
57 DEFINE_SYMBOL_TABLE_PARENT_TYPE(GlobalIFunc, Module)
H A DValue.h39 class GlobalIFunc; variable
1031 template <> struct isa_impl<GlobalIFunc, Value> {
1046 isa<GlobalIFunc>(Val);
H A DValue.def78 HANDLE_GLOBAL_VALUE(GlobalIFunc)
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DGlobals.cpp121 !isa<GlobalIFunc>(this) && !isDeduplicateComdat(getComdat()); in canBenefitFromLocalAlias()
201 if (isa<GlobalIFunc>(this)) in getComdat()
300 assert(isa<GlobalAlias>(this) || isa<GlobalIFunc>(this)); in isDeclaration()
591 GlobalIFunc::GlobalIFunc(Type *Ty, unsigned AddressSpace, LinkageTypes Link, in GlobalIFunc() function in GlobalIFunc
601 GlobalIFunc *GlobalIFunc::create(Type *Ty, unsigned AddressSpace, in create()
604 return new GlobalIFunc(Ty, AddressSpace, Link, Name, Resolver, ParentModule); in create()
607 void GlobalIFunc::removeFromParent() { getParent()->removeIFunc(this); } in removeFromParent()
609 void GlobalIFunc::eraseFromParent() { getParent()->eraseIFunc(this); } in eraseFromParent()
611 const Function *GlobalIFunc::getResolverFunction() const { in getResolverFunction()
615 void GlobalIFunc::applyAlongResolverPath( in applyAlongResolverPath()
H A DModule.cpp68 template class llvm::SymbolTableListTraits<GlobalIFunc>;
255 GlobalIFunc *Module::getNamedIFunc(StringRef Name) const { in getNamedIFunc()
256 return dyn_cast_or_null<GlobalIFunc>(getNamedValue(Name)); in getNamedIFunc()
561 for (GlobalIFunc &GIF : ifuncs()) in dropAllReferences()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DCloneModule.cpp118 for (const GlobalIFunc &I : M.ifuncs()) { in CloneModule()
121 GlobalIFunc::create(I.getValueType(), I.getAddressSpace(), in CloneModule()
202 for (const GlobalIFunc &I : M.ifuncs()) { in CloneModule()
203 GlobalIFunc *GI = cast<GlobalIFunc>(VMap[&I]); in CloneModule()
H A DModuleUtils.cpp358 Module &M, ArrayRef<GlobalIFunc *> FilteredIFuncsToLower) { in lowerGlobalIFuncUsersAsGlobalCtor()
359 SmallVector<GlobalIFunc *, 32> AllIFuncs; in lowerGlobalIFuncUsersAsGlobalCtor()
360 ArrayRef<GlobalIFunc *> IFuncsToLower = FilteredIFuncsToLower; in lowerGlobalIFuncUsersAsGlobalCtor()
362 for (GlobalIFunc &GI : M.ifuncs()) in lowerGlobalIFuncUsersAsGlobalCtor()
396 for (GlobalIFunc *GI : IFuncsToLower) { in lowerGlobalIFuncUsersAsGlobalCtor()
H A DFunctionImportUtils.cpp50 if (isa<GlobalIFunc>(SGV) || in shouldPromoteLocalToGlobal()
52 isa<GlobalIFunc>(cast<GlobalAlias>(SGV)->getAliaseeObject()))) in shouldPromoteLocalToGlobal()
H A DSplitModule.cpp106 if (const auto *GI = dyn_cast_or_null<GlobalIFunc>(GO)) in getGVPartitioningRoot()
266 for (GlobalIFunc &GIF : M.ifuncs()) in SplitModule()
H A DValueMapper.cpp948 else if (auto *GI = dyn_cast<GlobalIFunc>(GV)) in flush()
1153 assert((isa<GlobalAlias>(GV) || isa<GlobalIFunc>(GV)) && in scheduleMapAliasOrIFunc()
1278 void ValueMapper::scheduleMapGlobalIFunc(GlobalIFunc &GI, Constant &Resolver, in scheduleMapGlobalIFunc()
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DModuleUtils.h18 #include "llvm/IR/GlobalIFunc.h"
30 class GlobalIFunc; variable
144 Module &M, ArrayRef<GlobalIFunc *> IFuncsToLower = {});
H A DValueMapper.h196 void scheduleMapGlobalIFunc(GlobalIFunc &GI, Constant &Resolver,
/freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/
H A DGlobalDCE.cpp303 for (GlobalIFunc &GIF : M.ifuncs()) { in run()
357 std::vector<GlobalIFunc*> DeadIFuncs; in run()
358 for (GlobalIFunc &GIF : M.ifuncs()) in run()
404 for (GlobalIFunc *GIF : DeadIFuncs) in run()
H A DExtractGV.cpp132 for (GlobalIFunc &IF : llvm::make_early_inc_range(M.ifuncs())) { in run()
/freebsd/contrib/llvm-project/llvm/lib/Linker/
H A DIRMover.cpp509 void linkIFuncResolver(GlobalIFunc &Dst, GlobalIFunc &Src);
627 } else if (auto *GI = dyn_cast<GlobalIFunc>(New)) { in materialize()
717 if (auto *GI = dyn_cast<GlobalIFunc>(SGV)) { in copyIndirectSymbolProto()
718 auto *DGI = GlobalIFunc::create(Ty, SGV->getAddressSpace(), in copyIndirectSymbolProto()
1157 void IRLinker::linkIFuncResolver(GlobalIFunc &Dst, GlobalIFunc &Src) { in linkIFuncResolver()
1172 linkIFuncResolver(cast<GlobalIFunc>(Dst), cast<GlobalIFunc>(Src)); in linkGlobalValueBody()
/freebsd/contrib/llvm-project/llvm/lib/Target/DirectX/DXILWriter/
H A DDXILValueEnumerator.cpp122 for (const GlobalIFunc &I : M.ifuncs()) in orderModule()
172 for (const GlobalIFunc &I : M.ifuncs()) in orderModule()
343 for (const GlobalIFunc &I : M.ifuncs()) in predictUseListOrder()
350 for (const GlobalIFunc &I : M.ifuncs()) in predictUseListOrder()
387 for (const GlobalIFunc &GIF : M.ifuncs()) { in ValueEnumerator()
407 for (const GlobalIFunc &GIF : M.ifuncs()) in ValueEnumerator()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DAsmPrinter.h601 virtual void emitMachOIFuncStubBody(Module &M, const GlobalIFunc &GI, in emitMachOIFuncStubBody()
607 virtual void emitMachOIFuncStubHelperBody(Module &M, const GlobalIFunc &GI, in emitMachOIFuncStubHelperBody()
898 void emitGlobalIFunc(Module &M, const GlobalIFunc &GI);
/freebsd/contrib/llvm-project/llvm/lib/Bitcode/Writer/
H A DValueEnumerator.cpp114 for (const GlobalIFunc &I : reverse(M.ifuncs())) in orderModule()
315 for (const GlobalIFunc &I : M.ifuncs()) in predictUseListOrder()
322 for (const GlobalIFunc &I : M.ifuncs()) in predictUseListOrder()
362 for (const GlobalIFunc &GIF : M.ifuncs()) { in ValueEnumerator()
383 for (const GlobalIFunc &GIF : M.ifuncs()) in ValueEnumerator()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DModuleSummaryAnalysis.cpp132 if (auto *GI = dyn_cast_if_present<GlobalIFunc>(GV); in findRefEdges()
461 if (auto *GI = dyn_cast_if_present<GlobalIFunc>(CalledValue)) in computeFunctionSummary()
859 if (isa<GlobalIFunc>(Aliasee)) in computeAliasSummary()
1030 for (const GlobalIFunc &I : M.ifuncs()) { in buildModuleSummaryIndex()
/freebsd/contrib/llvm-project/llvm/lib/Object/
H A DIRSymtab.cpp310 if (isa<GlobalIFunc>(GV)) in addSymbol()
311 GO = cast<GlobalIFunc>(GV)->getResolverFunction(); in addSymbol()
H A DModuleSymbolTable.cpp232 if (isa<Function>(GO) || isa<GlobalIFunc>(GO)) in getSymbolFlags()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86AsmPrinter.cpp539 void X86AsmPrinter::emitMachOIFuncStubBody(Module &M, const GlobalIFunc &GI, in emitMachOIFuncStubBody()
556 const GlobalIFunc &GI, in emitMachOIFuncStubHelperBody()

12