Home
last modified time | relevance | path

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

12

/llvm-project-15.0.7/llvm/include/llvm/IR/
H A DGlobalIFunc.h34 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 &) = delete;
42 GlobalIFunc &operator=(const GlobalIFunc &) = delete;
46 static GlobalIFunc *create(Type *Ty, unsigned AddressSpace,
57 void copyAttributesFrom(const GlobalIFunc *Src) { in copyAttributesFrom()
80 static_cast<const GlobalIFunc *>(this)->getResolverFunction()); in getResolverFunction()
105 struct OperandTraits<GlobalIFunc>
106 : public FixedNumOperandTraits<GlobalIFunc, 1> {};
[all …]
H A DValueSymbolTable.h27 class GlobalIFunc; variable
42 friend class SymbolTableListTraits<GlobalIFunc>;
H A DSymbolTableListTraits.h37 class GlobalIFunc; variable
57 DEFINE_SYMBOL_TABLE_PARENT_TYPE(GlobalIFunc, Module)
H A DModule.h76 using IFuncListType = SymbolTableList<GlobalIFunc>;
465 GlobalIFunc *getNamedIFunc(StringRef Name) const;
580 static IFuncListType Module::*getSublistAccess(GlobalIFunc*) { in getSublistAccess() argument
H A DValue.h39 class GlobalIFunc; variable
1017 template <> struct isa_impl<GlobalIFunc, Value> {
1032 isa<GlobalIFunc>(Val);
H A DValue.def78 HANDLE_GLOBAL_VALUE(GlobalIFunc)
/llvm-project-15.0.7/llvm/lib/IR/
H A DGlobals.cpp118 !isa<GlobalIFunc>(this) && !isDeduplicateComdat(getComdat()); in canBenefitFromLocalAlias()
189 if (isa<GlobalIFunc>(this)) in getComdat()
274 assert(isa<GlobalAlias>(this) || isa<GlobalIFunc>(this)); in isDeclaration()
560 GlobalIFunc::GlobalIFunc(Type *Ty, unsigned AddressSpace, LinkageTypes Link, in GlobalIFunc() function in GlobalIFunc
570 GlobalIFunc *GlobalIFunc::create(Type *Ty, unsigned AddressSpace, in create()
573 return new GlobalIFunc(Ty, AddressSpace, Link, Name, Resolver, ParentModule); in create()
576 void GlobalIFunc::removeFromParent() { in removeFromParent()
580 void GlobalIFunc::eraseFromParent() { in eraseFromParent()
584 const Function *GlobalIFunc::getResolverFunction() const { in getResolverFunction()
590 void GlobalIFunc::applyAlongResolverPath( in applyAlongResolverPath()
H A DModule.cpp66 template class llvm::SymbolTableListTraits<GlobalIFunc>;
244 GlobalIFunc *Module::getNamedIFunc(StringRef Name) const { in getNamedIFunc()
245 return dyn_cast_or_null<GlobalIFunc>(getNamedValue(Name)); in getNamedIFunc()
544 for (GlobalIFunc &GIF : ifuncs()) in dropAllReferences()
H A DAsmWriter.cpp142 for (const GlobalIFunc &I : M->ifuncs()) { in orderModule()
900 if (const GlobalIFunc *GIF = dyn_cast<GlobalIFunc>(V)) in createSlotTracker()
967 for (const GlobalIFunc &I : TheModule->ifuncs()) { in processModule()
1216 (isa<GlobalIFunc>(V) ? 'I' : 'o')))) << "]\n"); in CreateModuleSlot()
2577 void printIFunc(const GlobalIFunc *GI);
2819 for (const GlobalIFunc &GI : M->ifuncs()) in printModule()
3601 void AssemblyWriter::printIFunc(const GlobalIFunc *GI) { in printIFunc()
4624 else if (const GlobalIFunc *I = dyn_cast<GlobalIFunc>(GV)) in print()
H A DCore.cpp2550 return wrap(GlobalIFunc::create(unwrap(Ty), AddrSpace, in LLVMAddGlobalIFunc()
2578 GlobalIFunc *GIF = unwrap<GlobalIFunc>(IFunc); in LLVMGetNextGlobalIFunc()
2586 GlobalIFunc *GIF = unwrap<GlobalIFunc>(IFunc); in LLVMGetPreviousGlobalIFunc()
2594 return wrap(unwrap<GlobalIFunc>(IFunc)->getResolver()); in LLVMGetGlobalIFuncResolver()
2598 unwrap<GlobalIFunc>(IFunc)->setResolver(unwrap<Constant>(Resolver)); in LLVMSetGlobalIFuncResolver()
2602 unwrap<GlobalIFunc>(IFunc)->eraseFromParent(); in LLVMEraseGlobalIFunc()
2606 unwrap<GlobalIFunc>(IFunc)->removeFromParent(); in LLVMRemoveGlobalIFunc()
/llvm-project-15.0.7/llvm/lib/Transforms/IPO/
H A DGlobalDCE.cpp345 for (GlobalIFunc &GIF : M.ifuncs()) { in run()
399 std::vector<GlobalIFunc*> DeadIFuncs; in run()
400 for (GlobalIFunc &GIF : M.ifuncs()) in run()
446 for (GlobalIFunc *GIF : DeadIFuncs) in run()
H A DFunctionImport.cpp1153 if (isa<GlobalIFunc>(&GV) || in thinLTOInternalizeModule()
1155 isa<GlobalIFunc>(cast<GlobalAlias>(&GV)->getAliaseeObject()))) in thinLTOInternalizeModule()
1288 if (!GA.hasName() || isa<GlobalIFunc>(GA.getAliaseeObject())) in importFunctions()
/llvm-project-15.0.7/llvm/tools/verify-uselistorder/
H A Dverify-uselistorder.cpp194 for (const GlobalIFunc &IF : M.ifuncs()) in ValueMapping()
205 for (const GlobalIFunc &IF : M.ifuncs()) in ValueMapping()
471 for (GlobalIFunc &IF : M.ifuncs()) in changeUseLists()
482 for (GlobalIFunc &IF : M.ifuncs()) in changeUseLists()
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DFunctionImportUtils.cpp40 if (isa<GlobalIFunc>(SGV) || in shouldPromoteLocalToGlobal()
42 isa<GlobalIFunc>(cast<GlobalAlias>(SGV)->getAliaseeObject()))) in shouldPromoteLocalToGlobal()
H A DSplitModule.cpp94 if (const auto *GI = dyn_cast_or_null<GlobalIFunc>(GO)) in getGVPartitioningRoot()
262 for (GlobalIFunc &GIF : M.ifuncs()) in SplitModule()
H A DValueMapper.cpp892 else if (auto *GI = dyn_cast<GlobalIFunc>(GV)) in flush()
1093 assert((isa<GlobalAlias>(GV) || isa<GlobalIFunc>(GV)) && in scheduleMapAliasOrIFunc()
1203 void ValueMapper::scheduleMapGlobalIFunc(GlobalIFunc &GI, Constant &Resolver, in scheduleMapGlobalIFunc()
/llvm-project-15.0.7/llvm/lib/Linker/
H A DIRMover.cpp501 void linkIFuncResolver(GlobalIFunc &Dst, GlobalIFunc &Src);
616 } else if (auto *GI = dyn_cast<GlobalIFunc>(New)) { in materialize()
704 if (auto *GI = dyn_cast<GlobalIFunc>(SGV)) { in copyIndirectSymbolProto()
705 auto *DGI = GlobalIFunc::create(Ty, SGV->getAddressSpace(), in copyIndirectSymbolProto()
1133 void IRLinker::linkIFuncResolver(GlobalIFunc &Dst, GlobalIFunc &Src) { in linkIFuncResolver()
1148 linkIFuncResolver(cast<GlobalIFunc>(Dst), cast<GlobalIFunc>(Src)); in linkGlobalValueBody()
/llvm-project-15.0.7/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()
/llvm-project-15.0.7/llvm/lib/Bitcode/Writer/
H A DValueEnumerator.cpp114 for (const GlobalIFunc &I : reverse(M.ifuncs())) in orderModule()
301 for (const GlobalIFunc &I : M.ifuncs()) in predictUseListOrder()
308 for (const GlobalIFunc &I : M.ifuncs()) in predictUseListOrder()
348 for (const GlobalIFunc &GIF : M.ifuncs()) { in ValueEnumerator()
369 for (const GlobalIFunc &GIF : M.ifuncs()) in ValueEnumerator()
/llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/
H A DValueMapper.h187 void scheduleMapGlobalIFunc(GlobalIFunc &GI, Constant &Resolver,
/llvm-project-15.0.7/llvm/lib/Object/
H A DIRSymtab.cpp297 if (isa<GlobalIFunc>(GV)) in addSymbol()
298 GO = cast<GlobalIFunc>(GV)->getResolverFunction(); in addSymbol()
H A DModuleSymbolTable.cpp205 if (isa<Function>(GO) || isa<GlobalIFunc>(GO)) in getSymbolFlags()
/llvm-project-15.0.7/clang/lib/CodeGen/
H A DCodeGenModule.cpp336 else if (auto *GI = dyn_cast<llvm::GlobalIFunc>(GV)) in getAliasedGlobal()
410 IsIFunc ? cast<llvm::GlobalIFunc>(Alias)->getResolver() in checkAliases()
439 cast<llvm::GlobalIFunc>(Alias)->setResolver(Aliasee); in checkAliases()
3764 if (!isa<llvm::GlobalIFunc>(IFunc)) { in emitCPUDispatchDefinition()
3824 llvm::GlobalIFunc *GIF = in GetOrCreateMultiVersionResolver()
5372 llvm::GlobalIFunc *GIF = in emitIFuncDefinition()
6497 llvm::SmallVector<llvm::GlobalIFunc *> IFuncs; in CheckAndReplaceExternCIFuncs()
6518 if (auto *IFunc = dyn_cast<llvm::GlobalIFunc>(CEUser)) { in CheckAndReplaceExternCIFuncs()
6525 } else if (auto *IFunc = dyn_cast<llvm::GlobalIFunc>(User)) { in CheckAndReplaceExternCIFuncs()
6538 for (llvm::GlobalIFunc *IFunc : IFuncs) in CheckAndReplaceExternCIFuncs()
[all …]
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DModuleSummaryAnalysis.cpp655 if (isa<GlobalIFunc>(Aliasee)) in computeAliasSummary()
819 for (const GlobalIFunc &I : M.ifuncs()) { in buildModuleSummaryIndex()
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DAsmPrinter.h840 void emitGlobalIFunc(Module &M, const GlobalIFunc &GI);

12