#include <Cloning.h>
|
| DefMaps | buildDefMaps (ArrayRef< std::reference_wrapper< Module > > Mods) |
| |
| void | resolveGV (const DefMaps &Defs, GlobalValue *G, SmallVector< GlobalValue * > &WorkList, SmallPtrSetImpl< GlobalValue * > &Found) |
| |
| void | scanConstant (Constant *C, const DefMaps &Defs, SmallVector< GlobalValue * > &WorkList, SmallPtrSetImpl< GlobalValue * > &Found) |
| |
| SmallPtrSet< GlobalValue *, 32 > | findTransitiveClosure (Function *Entry, const DefMaps &Defs) |
| |
| std::unique_ptr< Module > | cloneClosure (Module &M, LLVMContext &Ctx, SmallPtrSetImpl< GlobalValue * > const &Reachable, function_ref< bool(const GlobalValue *)> ShouldCloneDefinition=nullptr) |
| |
◆ buildDefMaps()
| DefMaps proteus::LinkingCloner::buildDefMaps |
( |
ArrayRef< std::reference_wrapper< Module > > |
Mods | ) |
|
|
inline |
◆ cloneClosure()
| std::unique_ptr< Module > proteus::LinkingCloner::cloneClosure |
( |
Module & |
M, |
|
|
LLVMContext & |
Ctx, |
|
|
SmallPtrSetImpl< GlobalValue * > const & |
Reachable, |
|
|
function_ref< bool(const GlobalValue *)> |
ShouldCloneDefinition = nullptr |
|
) |
| |
|
inline |
◆ findTransitiveClosure()
| SmallPtrSet< GlobalValue *, 32 > proteus::LinkingCloner::findTransitiveClosure |
( |
Function * |
Entry, |
|
|
const DefMaps & |
Defs |
|
) |
| |
|
inline |
◆ resolveGV()
| void proteus::LinkingCloner::resolveGV |
( |
const DefMaps & |
Defs, |
|
|
GlobalValue * |
G, |
|
|
SmallVector< GlobalValue * > & |
WorkList, |
|
|
SmallPtrSetImpl< GlobalValue * > & |
Found |
|
) |
| |
|
inline |
◆ scanConstant()
| void proteus::LinkingCloner::scanConstant |
( |
Constant * |
C, |
|
|
const DefMaps & |
Defs, |
|
|
SmallVector< GlobalValue * > & |
WorkList, |
|
|
SmallPtrSetImpl< GlobalValue * > & |
Found |
|
) |
| |
|
inline |
◆ FuncDecls
◆ GlobDecls
◆ ResolvedMap
| DenseMap<GlobalValue *, SmallVector<GlobalValue *> > proteus::LinkingCloner::ResolvedMap |
The documentation for this struct was generated from the following file: