LLVM  4.0.0
Public Member Functions | Public Attributes | List of all members
llvm::InlineFunctionInfo Class Reference

InlineFunctionInfo - This class captures the data input to the InlineFunction call, and records the auxiliary results produced by it. More...

#include <Cloning.h>

Collaboration diagram for llvm::InlineFunctionInfo:
[legend]

Public Member Functions

 InlineFunctionInfo (CallGraph *cg=nullptr, std::function< AssumptionCache &(Function &)> *GetAssumptionCache=nullptr)
 
void reset ()
 

Public Attributes

CallGraphCG
 CG - If non-null, InlineFunction will update the callgraph to reflect the changes it makes. More...
 
std::function< AssumptionCache
&(Function &)> * 
GetAssumptionCache
 
SmallVector< AllocaInst *, 4 > StaticAllocas
 StaticAllocas - InlineFunction fills this in with all static allocas that get copied into the caller. More...
 
SmallVector< WeakVH, 8 > InlinedCalls
 InlinedCalls - InlineFunction fills this in with callsites that were inlined from the callee. More...
 
SmallVector< CallSite, 8 > InlinedCallSites
 All of the new call sites inlined into the caller. More...
 

Detailed Description

InlineFunctionInfo - This class captures the data input to the InlineFunction call, and records the auxiliary results produced by it.

Definition at line 177 of file Cloning.h.

Constructor & Destructor Documentation

llvm::InlineFunctionInfo::InlineFunctionInfo ( CallGraph cg = nullptr,
std::function< AssumptionCache &(Function &)> *  GetAssumptionCache = nullptr 
)
inlineexplicit

Definition at line 179 of file Cloning.h.

Member Function Documentation

void llvm::InlineFunctionInfo::reset ( )
inline

Definition at line 204 of file Cloning.h.

References InlinedCalls, InlinedCallSites, and StaticAllocas.

Referenced by llvm::InlineFunction().

Member Data Documentation

CallGraph* llvm::InlineFunctionInfo::CG

CG - If non-null, InlineFunction will update the callgraph to reflect the changes it makes.

Definition at line 186 of file Cloning.h.

Referenced by llvm::InlineFunction(), and UpdateCallGraphAfterInlining().

std::function<AssumptionCache &(Function &)>* llvm::InlineFunctionInfo::GetAssumptionCache

Definition at line 187 of file Cloning.h.

Referenced by AddAlignmentAssumptions(), HandleByValArgument(), and llvm::InlineFunction().

SmallVector<WeakVH, 8> llvm::InlineFunctionInfo::InlinedCalls

InlinedCalls - InlineFunction fills this in with callsites that were inlined from the callee.

This is only filled in if CG is non-null.

Definition at line 195 of file Cloning.h.

Referenced by inlineCallsImpl(), reset(), and UpdateCallGraphAfterInlining().

SmallVector<CallSite, 8> llvm::InlineFunctionInfo::InlinedCallSites

All of the new call sites inlined into the caller.

'InlineFunction' fills this in by scanning the inlined instructions, and only if CG is null. If CG is non-null, instead the value handle InlinedCalls above is used.

Definition at line 202 of file Cloning.h.

Referenced by llvm::InlineFunction(), reset(), and llvm::InlinerPass::run().

SmallVector<AllocaInst *, 4> llvm::InlineFunctionInfo::StaticAllocas

StaticAllocas - InlineFunction fills this in with all static allocas that get copied into the caller.

Definition at line 191 of file Cloning.h.

Referenced by HandleByValArgument(), llvm::InlineFunction(), mergeInlinedArrayAllocas(), and reset().


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