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

#include <RvsdgModule.hpp>

Inheritance diagram for jlm::llvm::LlvmRvsdgModule:
Inheritance graph
[legend]
Collaboration diagram for jlm::llvm::LlvmRvsdgModule:
Collaboration graph
[legend]

Public Member Functions

 ~LlvmRvsdgModule () noexcept override=default
 
 LlvmRvsdgModule (util::FilePath sourceFileName, std::string targetTriple, std::string dataLayout)
 
 LlvmRvsdgModule (util::FilePath sourceFileName, std::string targetTriple, std::string dataLayout, std::unique_ptr< rvsdg::Graph > rvsdg)
 
 LlvmRvsdgModule (const LlvmRvsdgModule &)=delete
 
 LlvmRvsdgModule (LlvmRvsdgModule &&)=delete
 
LlvmRvsdgModuleoperator= (const LlvmRvsdgModule &)=delete
 
LlvmRvsdgModuleoperator= (LlvmRvsdgModule &&)=delete
 
std::unique_ptr< RvsdgModulecopy () const override
 
const util::FilePathSourceFileName () const noexcept
 
const std::string & TargetTriple () const noexcept
 
const std::string & DataLayout () const noexcept
 
- Public Member Functions inherited from jlm::rvsdg::RvsdgModule
virtual ~RvsdgModule () noexcept
 
 RvsdgModule ()=default
 
 RvsdgModule (util::FilePath sourceFilePath)
 
 RvsdgModule (util::FilePath sourceFilePath, std::unique_ptr< Graph > rvsdg)
 
 RvsdgModule (const RvsdgModule &)=delete
 
 RvsdgModule (RvsdgModule &&)=delete
 
RvsdgModuleoperator= (const RvsdgModule &)=delete
 
RvsdgModuleoperator= (RvsdgModule &&)=delete
 
GraphRvsdg () noexcept
 
const GraphRvsdg () const noexcept
 
const std::optional< util::FilePath > & SourceFilePath () const noexcept
 

Static Public Member Functions

static std::unique_ptr< LlvmRvsdgModuleCreate (const util::FilePath &sourceFileName, const std::string &targetTriple, const std::string &dataLayout)
 

Private Attributes

std::string DataLayout_
 
std::string TargetTriple_
 

Detailed Description

An LLVM module utilizing the RVSDG representation.

Definition at line 110 of file RvsdgModule.hpp.

Constructor & Destructor Documentation

◆ ~LlvmRvsdgModule()

jlm::llvm::LlvmRvsdgModule::~LlvmRvsdgModule ( )
overridedefaultnoexcept

◆ LlvmRvsdgModule() [1/4]

jlm::llvm::LlvmRvsdgModule::LlvmRvsdgModule ( util::FilePath  sourceFileName,
std::string  targetTriple,
std::string  dataLayout 
)
inline

Definition at line 115 of file RvsdgModule.hpp.

◆ LlvmRvsdgModule() [2/4]

jlm::llvm::LlvmRvsdgModule::LlvmRvsdgModule ( util::FilePath  sourceFileName,
std::string  targetTriple,
std::string  dataLayout,
std::unique_ptr< rvsdg::Graph rvsdg 
)
inline

Definition at line 121 of file RvsdgModule.hpp.

◆ LlvmRvsdgModule() [3/4]

jlm::llvm::LlvmRvsdgModule::LlvmRvsdgModule ( const LlvmRvsdgModule )
delete

◆ LlvmRvsdgModule() [4/4]

jlm::llvm::LlvmRvsdgModule::LlvmRvsdgModule ( LlvmRvsdgModule &&  )
delete

Member Function Documentation

◆ copy()

std::unique_ptr< rvsdg::RvsdgModule > jlm::llvm::LlvmRvsdgModule::copy ( ) const
overridevirtual
Returns
A copy of the instance.

Reimplemented from jlm::rvsdg::RvsdgModule.

Definition at line 18 of file RvsdgModule.cpp.

◆ Create()

static std::unique_ptr<LlvmRvsdgModule> jlm::llvm::LlvmRvsdgModule::Create ( const util::FilePath sourceFileName,
const std::string &  targetTriple,
const std::string &  dataLayout 
)
inlinestatic

Definition at line 163 of file RvsdgModule.hpp.

◆ DataLayout()

const std::string& jlm::llvm::LlvmRvsdgModule::DataLayout ( ) const
inlinenoexcept

Definition at line 157 of file RvsdgModule.hpp.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

◆ SourceFileName()

const util::FilePath& jlm::llvm::LlvmRvsdgModule::SourceFileName ( ) const
inlinenoexcept

Definition at line 145 of file RvsdgModule.hpp.

◆ TargetTriple()

const std::string& jlm::llvm::LlvmRvsdgModule::TargetTriple ( ) const
inlinenoexcept

Definition at line 151 of file RvsdgModule.hpp.

Member Data Documentation

◆ DataLayout_

std::string jlm::llvm::LlvmRvsdgModule::DataLayout_
private

Definition at line 172 of file RvsdgModule.hpp.

◆ TargetTriple_

std::string jlm::llvm::LlvmRvsdgModule::TargetTriple_
private

Definition at line 173 of file RvsdgModule.hpp.


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