llir-opt  0.0.1
Low-Level Post-Link Optimiser for OCaml and C
Public Member Functions | List of all members
InlineHelper Class Referencefinal

#include <passes/inliner/inline_helper.h>

Inheritance diagram for InlineHelper:
Inheritance graph
[legend]
Collaboration diagram for InlineHelper:
Collaboration graph
[legend]

Public Member Functions

 InlineHelper (CallSite *call, Func *callee, TrampolineGraph &graph)
 
void Inline ()
 Inlines the function.
 
- Public Member Functions inherited from CloneVisitor
virtual ~CloneVisitor ()
 Destroys the visitor.
 
virtual FuncMap (Func *func)
 Maps a block to a new one.
 
virtual ExternMap (Extern *ext)
 Maps a block to a new one.
 
virtual AtomMap (Atom *atom)
 Maps an atom to a new one.
 
virtual ConstantMap (Constant *constant)
 Maps a constant to a new one.
 
virtual GlobalMap (Global *global)
 Maps a global to a potentially new one.
 
virtual ExprMap (Expr *expr)
 Maps an expression to a potentially new one.
 
virtual Type Map (Type ty, Inst *inst, unsigned idx)
 Maps a type to a new one.
 
virtual InstClone (Inst *inst)
 Clones an instruction.
 
void Fixup ()
 Fixes PHI nodes.
 

Additional Inherited Members

- Protected Member Functions inherited from CloneVisitor
Ref< ValueMap (Ref< Value > value)
 Maps a value to a potentially new one.
 
template<typename It , typename T = typename It::value_type>
std::vector< T > Map (llvm::iterator_range< It > range)
 Map a vector of values.
 
- Protected Attributes inherited from CloneVisitor
llvm::SmallVector< std::pair< PhiInst *, PhiInst * >, 10 > fixups_
 PHI instruction delayed fixups.
 

Detailed Description

Inline clone helper

Constructor & Destructor Documentation

◆ InlineHelper()

InlineHelper::InlineHelper ( CallSite *  call,
Func callee,
TrampolineGraph graph 
)

Initialises the inliner.

Parameters
callCall site to inline into
calleeCallee to inline into the call site.
graphOCaml trampoline graph.

The documentation for this class was generated from the following files: