diff options
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/IR/ModuleSummaryIndex.cpp | 6 | ||||
-rw-r--r-- | llvm/lib/LTO/ThinLTOCodeGenerator.cpp | 17 | ||||
-rw-r--r-- | llvm/lib/Transforms/IPO/FunctionImport.cpp | 11 |
3 files changed, 12 insertions, 22 deletions
diff --git a/llvm/lib/IR/ModuleSummaryIndex.cpp b/llvm/lib/IR/ModuleSummaryIndex.cpp index 4c122c7241e..6107cf40a08 100644 --- a/llvm/lib/IR/ModuleSummaryIndex.cpp +++ b/llvm/lib/IR/ModuleSummaryIndex.cpp @@ -68,8 +68,7 @@ void ModuleSummaryIndex::removeEmptySummaryEntries() { // Collect for the given module the list of function it defines // (GUID -> Summary). void ModuleSummaryIndex::collectDefinedFunctionsForModule( - StringRef ModulePath, - std::map<GlobalValue::GUID, GlobalValueSummary *> &GVSummaryMap) const { + StringRef ModulePath, GVSummaryMapTy &GVSummaryMap) const { for (auto &GlobalList : *this) { auto GUID = GlobalList.first; for (auto &GlobSummary : GlobalList.second) { @@ -87,8 +86,7 @@ void ModuleSummaryIndex::collectDefinedFunctionsForModule( // Collect for each module the list of function it defines (GUID -> Summary). void ModuleSummaryIndex::collectDefinedGVSummariesPerModule( - StringMap<std::map<GlobalValue::GUID, GlobalValueSummary *>> - &ModuleToDefinedGVSummaries) const { + StringMap<GVSummaryMapTy> &ModuleToDefinedGVSummaries) const { for (auto &GlobalList : *this) { auto GUID = GlobalList.first; for (auto &Summary : GlobalList.second) { diff --git a/llvm/lib/LTO/ThinLTOCodeGenerator.cpp b/llvm/lib/LTO/ThinLTOCodeGenerator.cpp index 21ba1e92a3a..51dcc084b49 100644 --- a/llvm/lib/LTO/ThinLTOCodeGenerator.cpp +++ b/llvm/lib/LTO/ThinLTOCodeGenerator.cpp @@ -187,8 +187,7 @@ ResolveODR(const ModuleSummaryIndex &Index, static void ResolveODR( const ModuleSummaryIndex &Index, const FunctionImporter::ExportSetTy &ExportList, - const std::map<GlobalValue::GUID, GlobalValueSummary *> &DefinedGlobals, - StringRef ModuleIdentifier, + const GVSummaryMapTy &DefinedGlobals, StringRef ModuleIdentifier, std::map<GlobalValue::GUID, GlobalValue::LinkageTypes> &ResolvedODR) { if (Index.modulePaths().size() == 1) // Nothing to do if we don't have multiple modules @@ -423,7 +422,7 @@ public: const FunctionImporter::ImportMapTy &ImportList, const FunctionImporter::ExportSetTy &ExportList, const std::map<GlobalValue::GUID, GlobalValue::LinkageTypes> &ResolvedODR, - const std::map<GlobalValue::GUID, GlobalValueSummary *> &DefinedFunctions, + const GVSummaryMapTy &DefinedFunctions, const DenseSet<GlobalValue::GUID> &PreservedSymbols) { if (CachePath.empty()) return; @@ -672,8 +671,7 @@ void ThinLTOCodeGenerator::promote(Module &TheModule, auto ModuleCount = Index.modulePaths().size(); auto ModuleIdentifier = TheModule.getModuleIdentifier(); // Collect for each module the list of function it defines (GUID -> Summary). - StringMap<std::map<GlobalValue::GUID, GlobalValueSummary *>> - ModuleToDefinedGVSummaries; + StringMap<GVSummaryMapTy> ModuleToDefinedGVSummaries; Index.collectDefinedGVSummariesPerModule(ModuleToDefinedGVSummaries); // Generate import/export list @@ -705,8 +703,7 @@ void ThinLTOCodeGenerator::crossModuleImport(Module &TheModule, auto ModuleCount = Index.modulePaths().size(); // Collect for each module the list of function it defines (GUID -> Summary). - StringMap<std::map<GlobalValue::GUID, GlobalValueSummary *>> - ModuleToDefinedGVSummaries(ModuleCount); + StringMap<GVSummaryMapTy> ModuleToDefinedGVSummaries(ModuleCount); Index.collectDefinedGVSummariesPerModule(ModuleToDefinedGVSummaries); // Generate import/export list @@ -733,8 +730,7 @@ void ThinLTOCodeGenerator::internalize(Module &TheModule, computeGUIDPreservedSymbols(PreservedSymbols, TMBuilder.TheTriple); // Collect for each module the list of function it defines (GUID -> Summary). - StringMap<std::map<GlobalValue::GUID, GlobalValueSummary *>> - ModuleToDefinedGVSummaries(ModuleCount); + StringMap<GVSummaryMapTy> ModuleToDefinedGVSummaries(ModuleCount); Index.collectDefinedGVSummariesPerModule(ModuleToDefinedGVSummaries); // Generate import/export list @@ -815,8 +811,7 @@ void ThinLTOCodeGenerator::run() { auto ModuleCount = Modules.size(); // Collect for each module the list of function it defines (GUID -> Summary). - StringMap<std::map<GlobalValue::GUID, GlobalValueSummary *>> - ModuleToDefinedGVSummaries(ModuleCount); + StringMap<GVSummaryMapTy> ModuleToDefinedGVSummaries(ModuleCount); Index->collectDefinedGVSummariesPerModule(ModuleToDefinedGVSummaries); // Collect the import/export lists for all modules from the call-graph in the diff --git a/llvm/lib/Transforms/IPO/FunctionImport.cpp b/llvm/lib/Transforms/IPO/FunctionImport.cpp index b6c8993a6f0..3f0d2624f5d 100644 --- a/llvm/lib/Transforms/IPO/FunctionImport.cpp +++ b/llvm/lib/Transforms/IPO/FunctionImport.cpp @@ -185,8 +185,7 @@ using EdgeInfo = std::pair<const FunctionSummary *, unsigned /* Threshold */>; /// exported from their source module. static void computeImportForFunction( const FunctionSummary &Summary, const ModuleSummaryIndex &Index, - unsigned Threshold, - const std::map<GlobalValue::GUID, GlobalValueSummary *> &DefinedGVSummaries, + unsigned Threshold, const GVSummaryMapTy &DefinedGVSummaries, SmallVectorImpl<EdgeInfo> &Worklist, FunctionImporter::ImportMapTy &ImportsForModule, StringMap<FunctionImporter::ExportSetTy> *ExportLists = nullptr) { @@ -256,8 +255,7 @@ static void computeImportForFunction( /// as well as the list of "exports", i.e. the list of symbols referenced from /// another module (that may require promotion). static void ComputeImportForModule( - const std::map<GlobalValue::GUID, GlobalValueSummary *> &DefinedGVSummaries, - const ModuleSummaryIndex &Index, + const GVSummaryMapTy &DefinedGVSummaries, const ModuleSummaryIndex &Index, FunctionImporter::ImportMapTy &ImportsForModule, StringMap<FunctionImporter::ExportSetTy> *ExportLists = nullptr) { // Worklist contains the list of function imported in this module, for which @@ -299,8 +297,7 @@ static void ComputeImportForModule( /// Compute all the import and export for every module using the Index. void llvm::ComputeCrossModuleImport( const ModuleSummaryIndex &Index, - const StringMap<std::map<GlobalValue::GUID, GlobalValueSummary *>> & - ModuleToDefinedGVSummaries, + const StringMap<GVSummaryMapTy> &ModuleToDefinedGVSummaries, StringMap<FunctionImporter::ImportMapTy> &ImportLists, StringMap<FunctionImporter::ExportSetTy> &ExportLists) { // For each module that has function defined, compute the import/export lists. @@ -337,7 +334,7 @@ void llvm::ComputeCrossModuleImportForModule( // Collect the list of functions this module defines. // GUID -> Summary - std::map<GlobalValue::GUID, GlobalValueSummary *> FunctionSummaryMap; + GVSummaryMapTy FunctionSummaryMap; Index.collectDefinedFunctionsForModule(ModulePath, FunctionSummaryMap); // Compute the import list for this module. |