LLVM  6.0.0svn
Classes | Namespaces | Functions
FunctionImport.h File Reference
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/ModuleSummaryIndex.h"
#include "llvm/IR/PassManager.h"
#include "llvm/Support/Error.h"
#include <functional>
#include <map>
#include <memory>
#include <string>
#include <system_error>
#include <unordered_set>
#include <utility>
Include dependency graph for FunctionImport.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::FunctionImporter
 The function importer is automatically importing function from other modules based on the provided summary informations. More...
 
class  llvm::FunctionImportPass
 The function importing pass. More...
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Functions

void llvm::ComputeCrossModuleImport (const ModuleSummaryIndex &Index, const StringMap< GVSummaryMapTy > &ModuleToDefinedGVSummaries, StringMap< FunctionImporter::ImportMapTy > &ImportLists, StringMap< FunctionImporter::ExportSetTy > &ExportLists)
 Compute all the imports and exports for every module in the Index. More...
 
void llvm::ComputeCrossModuleImportForModule (StringRef ModulePath, const ModuleSummaryIndex &Index, FunctionImporter::ImportMapTy &ImportList)
 Compute all the imports for the given module using the Index. More...
 
void llvm::computeDeadSymbols (ModuleSummaryIndex &Index, const DenseSet< GlobalValue::GUID > &GUIDPreservedSymbols)
 Compute all the symbols that are "dead": i.e these that can't be reached in the graph from any of the given symbols listed in GUIDPreservedSymbols. More...
 
void llvm::gatherImportedSummariesForModule (StringRef ModulePath, const StringMap< GVSummaryMapTy > &ModuleToDefinedGVSummaries, const FunctionImporter::ImportMapTy &ImportList, std::map< std::string, GVSummaryMapTy > &ModuleToSummariesForIndex)
 Compute the set of summaries needed for a ThinLTO backend compilation of ModulePath. More...
 
std::error_code llvm::EmitImportsFiles (StringRef ModulePath, StringRef OutputFilename, const FunctionImporter::ImportMapTy &ModuleImports)
 Emit into OutputFilename the files module ModulePath will import from. More...
 
void llvm::thinLTOResolveWeakForLinkerModule (Module &TheModule, const GVSummaryMapTy &DefinedGlobals)
 Resolve WeakForLinker values in TheModule based on the information recorded in the summaries during global summary-based analysis. More...
 
void llvm::thinLTOInternalizeModule (Module &TheModule, const GVSummaryMapTy &DefinedGlobals)
 Internalize TheModule based on the information recorded in the summaries during global summary-based analysis. More...