| /llvm-project-15.0.7/llvm/include/llvm/IR/ |
| H A D | GlobalIFunc.h | 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 &) = 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 D | ValueSymbolTable.h | 27 class GlobalIFunc; variable 42 friend class SymbolTableListTraits<GlobalIFunc>;
|
| H A D | SymbolTableListTraits.h | 37 class GlobalIFunc; variable 57 DEFINE_SYMBOL_TABLE_PARENT_TYPE(GlobalIFunc, Module)
|
| H A D | Module.h | 76 using IFuncListType = SymbolTableList<GlobalIFunc>; 465 GlobalIFunc *getNamedIFunc(StringRef Name) const; 580 static IFuncListType Module::*getSublistAccess(GlobalIFunc*) { in getSublistAccess() argument
|
| H A D | Value.h | 39 class GlobalIFunc; variable 1017 template <> struct isa_impl<GlobalIFunc, Value> { 1032 isa<GlobalIFunc>(Val);
|
| H A D | Value.def | 78 HANDLE_GLOBAL_VALUE(GlobalIFunc)
|
| /llvm-project-15.0.7/llvm/lib/IR/ |
| H A D | Globals.cpp | 118 !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 D | Module.cpp | 66 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 D | AsmWriter.cpp | 142 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 D | Core.cpp | 2550 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 D | GlobalDCE.cpp | 345 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 D | FunctionImport.cpp | 1153 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 D | verify-uselistorder.cpp | 194 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 D | FunctionImportUtils.cpp | 40 if (isa<GlobalIFunc>(SGV) || in shouldPromoteLocalToGlobal() 42 isa<GlobalIFunc>(cast<GlobalAlias>(SGV)->getAliaseeObject()))) in shouldPromoteLocalToGlobal()
|
| H A D | SplitModule.cpp | 94 if (const auto *GI = dyn_cast_or_null<GlobalIFunc>(GO)) in getGVPartitioningRoot() 262 for (GlobalIFunc &GIF : M.ifuncs()) in SplitModule()
|
| H A D | ValueMapper.cpp | 892 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 D | IRMover.cpp | 501 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 D | DXILValueEnumerator.cpp | 122 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 D | ValueEnumerator.cpp | 114 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 D | ValueMapper.h | 187 void scheduleMapGlobalIFunc(GlobalIFunc &GI, Constant &Resolver,
|
| /llvm-project-15.0.7/llvm/lib/Object/ |
| H A D | IRSymtab.cpp | 297 if (isa<GlobalIFunc>(GV)) in addSymbol() 298 GO = cast<GlobalIFunc>(GV)->getResolverFunction(); in addSymbol()
|
| H A D | ModuleSymbolTable.cpp | 205 if (isa<Function>(GO) || isa<GlobalIFunc>(GO)) in getSymbolFlags()
|
| /llvm-project-15.0.7/clang/lib/CodeGen/ |
| H A D | CodeGenModule.cpp | 336 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 D | ModuleSummaryAnalysis.cpp | 655 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 D | AsmPrinter.h | 840 void emitGlobalIFunc(Module &M, const GlobalIFunc &GI);
|