Jlm
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
jlm::llvm::ValueOrigin Struct Reference
Collaboration diagram for jlm::llvm::ValueOrigin:
Collaboration graph
[legend]

Public Types

enum class  Kind {
  Unknown , Uninitialized , LoadNode , StoreNode ,
  GammaNodeOutput , ThetaNodeOutput , ThetaNodePre
}
 

Public Member Functions

 ValueOrigin ()=delete
 
bool isKnown () const
 
bool operator== (const ValueOrigin &other) const noexcept
 
bool operator!= (const ValueOrigin &other) const noexcept
 

Static Public Member Functions

static ValueOrigin createUnknown ()
 
static ValueOrigin createUninitialized ()
 
static ValueOrigin createStoreNode (rvsdg::SimpleNode &storeNode)
 
static ValueOrigin createLoadNode (rvsdg::SimpleNode &loadNode)
 
static ValueOrigin createGammaNodeOutput (rvsdg::GammaNode &gammaNode)
 
static ValueOrigin createThetaNodeOutput (rvsdg::ThetaNode &thetaNode)
 
static ValueOrigin createThetaNodePre (rvsdg::ThetaNode &thetaNode)
 

Public Attributes

Kind kind
 
rvsdg::Nodenode
 

Detailed Description

Definition at line 323 of file StoreValueForwarding.cpp.

Member Enumeration Documentation

◆ Kind

enum class jlm::llvm::ValueOrigin::Kind
strong
Enumerator
Unknown 
Uninitialized 
LoadNode 
StoreNode 
GammaNodeOutput 
ThetaNodeOutput 
ThetaNodePre 

Definition at line 325 of file StoreValueForwarding.cpp.

Constructor & Destructor Documentation

◆ ValueOrigin()

jlm::llvm::ValueOrigin::ValueOrigin ( )
delete

Member Function Documentation

◆ createGammaNodeOutput()

static ValueOrigin jlm::llvm::ValueOrigin::createGammaNodeOutput ( rvsdg::GammaNode gammaNode)
inlinestatic

Definition at line 385 of file StoreValueForwarding.cpp.

◆ createLoadNode()

static ValueOrigin jlm::llvm::ValueOrigin::createLoadNode ( rvsdg::SimpleNode loadNode)
inlinestatic

Definition at line 379 of file StoreValueForwarding.cpp.

◆ createStoreNode()

static ValueOrigin jlm::llvm::ValueOrigin::createStoreNode ( rvsdg::SimpleNode storeNode)
inlinestatic

Definition at line 373 of file StoreValueForwarding.cpp.

◆ createThetaNodeOutput()

static ValueOrigin jlm::llvm::ValueOrigin::createThetaNodeOutput ( rvsdg::ThetaNode thetaNode)
inlinestatic

Definition at line 391 of file StoreValueForwarding.cpp.

◆ createThetaNodePre()

static ValueOrigin jlm::llvm::ValueOrigin::createThetaNodePre ( rvsdg::ThetaNode thetaNode)
inlinestatic

Definition at line 397 of file StoreValueForwarding.cpp.

◆ createUninitialized()

static ValueOrigin jlm::llvm::ValueOrigin::createUninitialized ( )
inlinestatic

Definition at line 367 of file StoreValueForwarding.cpp.

◆ createUnknown()

static ValueOrigin jlm::llvm::ValueOrigin::createUnknown ( )
inlinestatic

Definition at line 361 of file StoreValueForwarding.cpp.

◆ isKnown()

bool jlm::llvm::ValueOrigin::isKnown ( ) const
inline

Definition at line 343 of file StoreValueForwarding.cpp.

◆ operator!=()

bool jlm::llvm::ValueOrigin::operator!= ( const ValueOrigin other) const
inlinenoexcept

Definition at line 355 of file StoreValueForwarding.cpp.

◆ operator==()

bool jlm::llvm::ValueOrigin::operator== ( const ValueOrigin other) const
inlinenoexcept

Definition at line 349 of file StoreValueForwarding.cpp.

Member Data Documentation

◆ kind

Kind jlm::llvm::ValueOrigin::kind

Definition at line 336 of file StoreValueForwarding.cpp.

◆ node

rvsdg::Node* jlm::llvm::ValueOrigin::node

Definition at line 337 of file StoreValueForwarding.cpp.


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