Jlm
Classes | Namespaces | Functions
inlining.cpp File Reference
#include <jlm/llvm/ir/CallSummary.hpp>
#include <jlm/llvm/ir/operators.hpp>
#include <jlm/llvm/ir/RvsdgModule.hpp>
#include <jlm/llvm/ir/Trace.hpp>
#include <jlm/llvm/opt/inlining.hpp>
#include <jlm/rvsdg/gamma.hpp>
#include <jlm/rvsdg/MatchType.hpp>
#include <jlm/rvsdg/theta.hpp>
#include <jlm/rvsdg/Trace.hpp>
#include <jlm/rvsdg/traverser.hpp>
#include <jlm/util/Statistics.hpp>
#include <jlm/util/time.hpp>
Include dependency graph for inlining.cpp:

Go to the source code of this file.

Classes

class  jlm::llvm::FunctionInlining::Statistics
 
struct  jlm::llvm::FunctionInlining::Context
 

Namespaces

 jlm
 
 jlm::llvm
 Global memory state passed between functions.
 

Functions

static std::vector< rvsdg::Output * > jlm::llvm::routeContextVariablesToRegion (rvsdg::Region &region, const rvsdg::LambdaNode &callee)
 
static void jlm::llvm::tryRerouteMemoryStateMergeAndSplit (rvsdg::SimpleNode &callEntryMerge, rvsdg::SimpleNode &callExitSplit)
 
static void jlm::llvm::hoistInlinedAllocas (const rvsdg::LambdaNode &callee, rvsdg::LambdaNode &caller, rvsdg::SubstitutionMap &smap)