#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) |
|
◆ 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 |
|
) |
| |
|
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: