|
LLVM
4.0.0
|
Class to handle necessary GlobalValue changes required by ThinLTO function importing, including linkage changes and any necessary renaming. More...
#include <FunctionImportUtils.h>
Public Member Functions | |
| FunctionImportGlobalProcessing (Module &M, const ModuleSummaryIndex &Index, DenseSet< const GlobalValue * > *GlobalsToImport=nullptr) | |
| bool | run () |
Static Public Member Functions | |
| static bool | doImportAsDefinition (const GlobalValue *SGV, DenseSet< const GlobalValue * > *GlobalsToImport) |
| Checks if we should import SGV as a definition, otherwise import as a declaration. More... | |
Class to handle necessary GlobalValue changes required by ThinLTO function importing, including linkage changes and any necessary renaming.
Definition at line 26 of file FunctionImportUtils.h.
|
inline |
Definition at line 86 of file FunctionImportUtils.h.
References llvm::collectUsedGlobalVariables(), and llvm::ModuleSummaryIndex::hasExportedFunctions().
|
static |
Checks if we should import SGV as a definition, otherwise import as a declaration.
Definition at line 23 of file FunctionImportUtils.cpp.
References llvm::detail::DenseSetImpl< ValueT, DenseMap< ValueT, detail::DenseSetEmpty, ValueInfoT, detail::DenseSetPair< ValueT > >, ValueInfoT >::count(), llvm::GlobalValue::getBaseObject(), and llvm::GlobalValue::hasLinkOnceODRLinkage().
| bool FunctionImportGlobalProcessing::run | ( | ) |
Definition at line 252 of file FunctionImportUtils.cpp.
Referenced by llvm::renameModuleForThinLTO().
1.8.6