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

#include <LlvmConversionContext.hpp>

Collaboration diagram for jlm::llvm::Context:
Collaboration graph
[legend]

Public Member Functions

 Context (InterProceduralGraphModule &im)
 
const llvm::Variableresult () const noexcept
 
void set_result (const llvm::Variable *result)
 
llvm::Variableiostate () const noexcept
 
void set_iostate (llvm::Variable *state)
 
llvm::Variablememory_state () const noexcept
 
void set_memory_state (llvm::Variable *state)
 
bool has (const ::llvm::BasicBlock *bb) const noexcept
 
bool has (BasicBlock *bb) const noexcept
 
BasicBlockget (const ::llvm::BasicBlock *bb) const noexcept
 
const ::llvm::BasicBlockget (BasicBlock *bb) const noexcept
 
void set_basic_block_map (BasicBlockMap bbmap)
 
bool has_value (const ::llvm::Value *value) const noexcept
 
const llvm::Variablelookup_value (const ::llvm::Value *value) const noexcept
 
void insert_value (const ::llvm::Value *value, const llvm::Variable *variable)
 
InterProceduralGraphModulemodule () const noexcept
 
void set_node (InterProceduralGraphNode *node) noexcept
 
InterProceduralGraphNodenode () const noexcept
 
TypeConverterGetTypeConverter () noexcept
 

Private Attributes

InterProceduralGraphModulemodule_
 
BasicBlockMap bbmap_
 
InterProceduralGraphNodenode_
 
const llvm::Variableresult_ {}
 
llvm::Variableiostate_
 
llvm::Variablememory_state_
 
std::unordered_map< const ::llvm::Value *, const llvm::Variable * > vmap_
 
TypeConverter TypeConverter_
 

Detailed Description

Definition at line 35 of file LlvmConversionContext.hpp.

Constructor & Destructor Documentation

◆ Context()

jlm::llvm::Context::Context ( InterProceduralGraphModule im)
inlineexplicit

Definition at line 38 of file LlvmConversionContext.hpp.

Member Function Documentation

◆ get() [1/2]

const ::llvm::BasicBlock* jlm::llvm::Context::get ( BasicBlock bb) const
inlinenoexcept

Definition at line 100 of file LlvmConversionContext.hpp.

◆ get() [2/2]

BasicBlock* jlm::llvm::Context::get ( const ::llvm::BasicBlock bb) const
inlinenoexcept

Definition at line 94 of file LlvmConversionContext.hpp.

◆ GetTypeConverter()

TypeConverter& jlm::llvm::Context::GetTypeConverter ( )
inlinenoexcept

Definition at line 150 of file LlvmConversionContext.hpp.

◆ has() [1/2]

bool jlm::llvm::Context::has ( BasicBlock bb) const
inlinenoexcept

Definition at line 88 of file LlvmConversionContext.hpp.

◆ has() [2/2]

bool jlm::llvm::Context::has ( const ::llvm::BasicBlock bb) const
inlinenoexcept

Definition at line 82 of file LlvmConversionContext.hpp.

◆ has_value()

bool jlm::llvm::Context::has_value ( const ::llvm::Value *  value) const
inlinenoexcept

Definition at line 112 of file LlvmConversionContext.hpp.

◆ insert_value()

void jlm::llvm::Context::insert_value ( const ::llvm::Value *  value,
const llvm::Variable variable 
)
inline

Definition at line 125 of file LlvmConversionContext.hpp.

◆ iostate()

llvm::Variable* jlm::llvm::Context::iostate ( ) const
inlinenoexcept

Definition at line 58 of file LlvmConversionContext.hpp.

◆ lookup_value()

const llvm::Variable* jlm::llvm::Context::lookup_value ( const ::llvm::Value *  value) const
inlinenoexcept

Definition at line 118 of file LlvmConversionContext.hpp.

◆ memory_state()

llvm::Variable* jlm::llvm::Context::memory_state ( ) const
inlinenoexcept

Definition at line 70 of file LlvmConversionContext.hpp.

◆ module()

InterProceduralGraphModule& jlm::llvm::Context::module ( ) const
inlinenoexcept

Definition at line 132 of file LlvmConversionContext.hpp.

◆ node()

InterProceduralGraphNode* jlm::llvm::Context::node ( ) const
inlinenoexcept

Definition at line 144 of file LlvmConversionContext.hpp.

◆ result()

const llvm::Variable* jlm::llvm::Context::result ( ) const
inlinenoexcept

Definition at line 46 of file LlvmConversionContext.hpp.

◆ set_basic_block_map()

void jlm::llvm::Context::set_basic_block_map ( BasicBlockMap  bbmap)
inline

Definition at line 106 of file LlvmConversionContext.hpp.

◆ set_iostate()

void jlm::llvm::Context::set_iostate ( llvm::Variable state)
inline

Definition at line 64 of file LlvmConversionContext.hpp.

◆ set_memory_state()

void jlm::llvm::Context::set_memory_state ( llvm::Variable state)
inline

Definition at line 76 of file LlvmConversionContext.hpp.

◆ set_node()

void jlm::llvm::Context::set_node ( InterProceduralGraphNode node)
inlinenoexcept

Definition at line 138 of file LlvmConversionContext.hpp.

◆ set_result()

void jlm::llvm::Context::set_result ( const llvm::Variable result)
inline

Definition at line 52 of file LlvmConversionContext.hpp.

Member Data Documentation

◆ bbmap_

BasicBlockMap jlm::llvm::Context::bbmap_
private

Definition at line 157 of file LlvmConversionContext.hpp.

◆ iostate_

llvm::Variable* jlm::llvm::Context::iostate_
private

Definition at line 160 of file LlvmConversionContext.hpp.

◆ memory_state_

llvm::Variable* jlm::llvm::Context::memory_state_
private

Definition at line 161 of file LlvmConversionContext.hpp.

◆ module_

InterProceduralGraphModule& jlm::llvm::Context::module_
private

Definition at line 156 of file LlvmConversionContext.hpp.

◆ node_

InterProceduralGraphNode* jlm::llvm::Context::node_
private

Definition at line 158 of file LlvmConversionContext.hpp.

◆ result_

const llvm::Variable* jlm::llvm::Context::result_ {}
private

Definition at line 159 of file LlvmConversionContext.hpp.

◆ TypeConverter_

TypeConverter jlm::llvm::Context::TypeConverter_
private

Definition at line 163 of file LlvmConversionContext.hpp.

◆ vmap_

std::unordered_map<const ::llvm::Value *, const llvm::Variable *> jlm::llvm::Context::vmap_
private

Definition at line 162 of file LlvmConversionContext.hpp.


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