class IRMover
Declaration
class IRMover { /* full declaration omitted */ };
Declared at: llvm/include/llvm/Linker/IRMover.h:26
Member Variables
- private llvm::Module& Composite
- private llvm::IRMover::IdentifiedStructTypeSet IdentifiedStructTypes
- A Metadata map to use for all calls to \a move().
Method Overview
- public IRMover(llvm::Module & M)
- public llvm::Module & getModule()
- public llvm::Error move(std::unique_ptr<Module> Src, ArrayRef<llvm::GlobalValue *> ValuesToLink, llvm::IRMover::LazyCallback AddLazyFor, bool IsPerformingImport)
Methods
¶IRMover(llvm::Module& M)
IRMover(llvm::Module& M)
Declared at: llvm/include/llvm/Linker/IRMover.h:63
Parameters
- llvm::Module& M
¶llvm::Module& getModule()
llvm::Module& getModule()
Declared at: llvm/include/llvm/Linker/IRMover.h:81
¶llvm::Error move(
std::unique_ptr<Module> Src,
ArrayRef<llvm::GlobalValue*> ValuesToLink,
llvm::IRMover::LazyCallback AddLazyFor,
bool IsPerformingImport)
llvm::Error move(
std::unique_ptr<Module> Src,
ArrayRef<llvm::GlobalValue*> ValuesToLink,
llvm::IRMover::LazyCallback AddLazyFor,
bool IsPerformingImport)
Description
Move in the provide values in \p ValuesToLink from \p Src. - \p AddLazyFor is a call back that the IRMover will call when a global value is referenced by one of the ValuesToLink (transitively) but was not present in ValuesToLink. The GlobalValue and a ValueAdder callback are passed as an argument, and the callback is expected to be called if the GlobalValue needs to be added to the \p ValuesToLink and linked. Pass nullptr if there's no work to be done in such cases. - \p IsPerformingImport is true when this IR link is to perform ThinLTO function importing from Src.
Declared at: llvm/include/llvm/Linker/IRMover.h:79
Parameters
- std::unique_ptr<Module> Src
- ArrayRef<llvm::GlobalValue*> ValuesToLink
- llvm::IRMover::LazyCallback AddLazyFor
- bool IsPerformingImport