Jlm
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
jlm::llvm::RvsdgToIpGraphConverter Class Referencefinal

#include <RvsdgToIpGraphConverter.hpp>

Classes

class  Context
 
class  Statistics
 

Public Member Functions

 ~RvsdgToIpGraphConverter ()
 
 RvsdgToIpGraphConverter ()
 
 RvsdgToIpGraphConverter (const RvsdgToIpGraphConverter &)=delete
 
 RvsdgToIpGraphConverter (RvsdgToIpGraphConverter &&)=delete
 
RvsdgToIpGraphConverteroperator= (const RvsdgToIpGraphConverter &)=delete
 
RvsdgToIpGraphConverteroperator= (RvsdgToIpGraphConverter &&)=delete
 
std::unique_ptr< InterProceduralGraphModuleConvertModule (LlvmRvsdgModule &rvsdgModule, util::StatisticsCollector &statisticsCollector)
 

Static Public Member Functions

static std::unique_ptr< InterProceduralGraphModuleCreateAndConvertModule (LlvmRvsdgModule &rvsdgModule, util::StatisticsCollector &statisticsCollector)
 

Private Member Functions

void ConvertImports (const rvsdg::Graph &graph)
 
void ConvertNodes (const rvsdg::Graph &graph)
 
void ConvertNode (const rvsdg::Node &node)
 
void ConvertDeltaNode (const rvsdg::DeltaNode &deltaNode)
 
void ConvertPhiNode (const rvsdg::PhiNode &phiNode)
 
void ConvertLambdaNode (const rvsdg::LambdaNode &lambdaNode)
 
void ConvertThetaNode (const rvsdg::ThetaNode &thetaNode)
 
void ConvertGammaNode (const rvsdg::GammaNode &gammaNode)
 
void ConvertSimpleNode (const rvsdg::SimpleNode &simpleNode)
 
std::unique_ptr< ControlFlowGraphCreateControlFlowGraph (const rvsdg::LambdaNode &lambda)
 
void ConvertRegion (rvsdg::Region &region)
 
std::unique_ptr< DataNodeInitCreateInitialization (const rvsdg::DeltaNode &deltaNode)
 

Static Private Member Functions

static bool RequiresSsaPhiOperation (const rvsdg::ThetaNode::LoopVar &loopVar, const Variable &v)
 

Private Attributes

std::unique_ptr< ContextContext_
 

Detailed Description

Definition at line 39 of file RvsdgToIpGraphConverter.hpp.

Constructor & Destructor Documentation

◆ ~RvsdgToIpGraphConverter()

jlm::llvm::RvsdgToIpGraphConverter::~RvsdgToIpGraphConverter ( )
default

◆ RvsdgToIpGraphConverter() [1/3]

jlm::llvm::RvsdgToIpGraphConverter::RvsdgToIpGraphConverter ( )
default

◆ RvsdgToIpGraphConverter() [2/3]

jlm::llvm::RvsdgToIpGraphConverter::RvsdgToIpGraphConverter ( const RvsdgToIpGraphConverter )
delete

◆ RvsdgToIpGraphConverter() [3/3]

jlm::llvm::RvsdgToIpGraphConverter::RvsdgToIpGraphConverter ( RvsdgToIpGraphConverter &&  )
delete

Member Function Documentation

◆ ConvertDeltaNode()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertDeltaNode ( const rvsdg::DeltaNode deltaNode)
private

Definition at line 513 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertGammaNode()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertGammaNode ( const rvsdg::GammaNode gammaNode)
private

Definition at line 258 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertImports()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertImports ( const rvsdg::Graph graph)
private

Definition at line 574 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertLambdaNode()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertLambdaNode ( const rvsdg::LambdaNode lambdaNode)
private

Definition at line 403 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertModule()

std::unique_ptr< InterProceduralGraphModule > jlm::llvm::RvsdgToIpGraphConverter::ConvertModule ( LlvmRvsdgModule rvsdgModule,
util::StatisticsCollector statisticsCollector 
)

Definition at line 606 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertNode()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertNode ( const rvsdg::Node node)
private

Definition at line 532 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertNodes()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertNodes ( const rvsdg::Graph graph)
private

Definition at line 565 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertPhiNode()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertPhiNode ( const rvsdg::PhiNode phiNode)
private

Definition at line 422 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertRegion()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertRegion ( rvsdg::Region region)
private

Definition at line 178 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertSimpleNode()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertSimpleNode ( const rvsdg::SimpleNode simpleNode)
private

Definition at line 239 of file RvsdgToIpGraphConverter.cpp.

◆ ConvertThetaNode()

void jlm::llvm::RvsdgToIpGraphConverter::ConvertThetaNode ( const rvsdg::ThetaNode thetaNode)
private

Definition at line 345 of file RvsdgToIpGraphConverter.cpp.

◆ CreateAndConvertModule()

std::unique_ptr< InterProceduralGraphModule > jlm::llvm::RvsdgToIpGraphConverter::CreateAndConvertModule ( LlvmRvsdgModule rvsdgModule,
util::StatisticsCollector statisticsCollector 
)
static

Definition at line 629 of file RvsdgToIpGraphConverter.cpp.

◆ CreateControlFlowGraph()

std::unique_ptr< ControlFlowGraph > jlm::llvm::RvsdgToIpGraphConverter::CreateControlFlowGraph ( const rvsdg::LambdaNode lambda)
private

Definition at line 193 of file RvsdgToIpGraphConverter.cpp.

◆ CreateInitialization()

std::unique_ptr< DataNodeInit > jlm::llvm::RvsdgToIpGraphConverter::CreateInitialization ( const rvsdg::DeltaNode deltaNode)
private

Definition at line 137 of file RvsdgToIpGraphConverter.cpp.

◆ operator=() [1/2]

RvsdgToIpGraphConverter& jlm::llvm::RvsdgToIpGraphConverter::operator= ( const RvsdgToIpGraphConverter )
delete

◆ operator=() [2/2]

RvsdgToIpGraphConverter& jlm::llvm::RvsdgToIpGraphConverter::operator= ( RvsdgToIpGraphConverter &&  )
delete

◆ RequiresSsaPhiOperation()

bool jlm::llvm::RvsdgToIpGraphConverter::RequiresSsaPhiOperation ( const rvsdg::ThetaNode::LoopVar loopVar,
const Variable v 
)
staticprivate

Definition at line 327 of file RvsdgToIpGraphConverter.cpp.

Member Data Documentation

◆ Context_

std::unique_ptr<Context> jlm::llvm::RvsdgToIpGraphConverter::Context_
private

Definition at line 107 of file RvsdgToIpGraphConverter.hpp.


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