|
LLVM 24.0.0git
|
A ModuleImportsManager that operates based on a workload definition (see -thinlto-workload-def). More...
Public Member Functions | |
| WorkloadImportsManager (function_ref< bool(GlobalValue::GUID, const GlobalValueSummary *)> IsPrevailing, const ModuleSummaryIndex &Index, DenseMap< StringRef, FunctionImporter::ExportSetTy > *ExportLists) | |
| Public Member Functions inherited from ModuleImportsManager | |
| virtual | ~ModuleImportsManager ()=default |
| DenseMap< StringRef, FunctionImporter::ExportSetTy > & | requiredDeclExports () |
| Values that must be exported from their defining modules because declarations of them are required in importing modules. | |
Additional Inherited Members | |
| Static Public Member Functions inherited from ModuleImportsManager | |
| static std::unique_ptr< ModuleImportsManager > | create (function_ref< bool(GlobalValue::GUID, const GlobalValueSummary *)> IsPrevailing, const ModuleSummaryIndex &Index, DenseMap< StringRef, FunctionImporter::ExportSetTy > *ExportLists=nullptr) |
| Protected Member Functions inherited from ModuleImportsManager | |
| ModuleImportsManager (function_ref< bool(GlobalValue::GUID, const GlobalValueSummary *)> IsPrevailing, const ModuleSummaryIndex &Index, DenseMap< StringRef, FunctionImporter::ExportSetTy > *ExportLists=nullptr) | |
| void | importRequiredDeclaration (ValueInfo VI, StringRef CallerModulePath, FunctionImporter::ImportMapTy &ImportList) |
Import a declaration of the callee VI of a call edge requiring a declaration import (see RequiresDeclImport in computeImportForFunction), from a function in CallerModulePath that is defined in or being imported into the current module, and isn't already defined in the current module. | |
| void | addRequiredDeclaration (ValueInfo VI, const GlobalValueSummary *DeclSummary, FunctionImporter::ImportMapTy &ImportList) |
Import a declaration of the callee VI from the module containing DeclSummary, which must be a candidate that is legal to import (i.e. | |
| Protected Attributes inherited from ModuleImportsManager | |
| function_ref< bool(GlobalValue::GUID, const GlobalValueSummary *)> | IsPrevailing |
| const ModuleSummaryIndex & | Index |
| DenseMap< StringRef, FunctionImporter::ExportSetTy > *const | ExportLists |
| DenseMap< StringRef, FunctionImporter::ExportSetTy > | RequiredDeclExports |
A ModuleImportsManager that operates based on a workload definition (see -thinlto-workload-def).
For modules that do not define workload roots, it applies the base ModuleImportsManager import policy.
Definition at line 607 of file FunctionImport.cpp.
|
inline |
Definition at line 864 of file FunctionImport.cpp.
References llvm::dbgs(), ModuleImportsManager::ExportLists, if(), ModuleImportsManager::Index, ModuleImportsManager::IsPrevailing, LLVM_DEBUG, ModuleImportsManager::ModuleImportsManager(), llvm::UseCtxProfile, and llvm::WorkloadDefinitions.