KSeExpr  4.0.4.0
Public Member Functions | Public Attributes | List of all members
KSeExpr::ExprLocalVarPhi Class Reference

ExprLocalVar join (merge) references. Remembers which variables are possible assigners to this. More...

#include <ExprEnv.h>

Inheritance diagram for KSeExpr::ExprLocalVarPhi:
KSeExpr::ExprLocalVar

Public Member Functions

 ExprLocalVarPhi (const ExprType &condLife, ExprLocalVar *thenVar, ExprLocalVar *elseVar)
 
bool valid () const
 
void setPhi (ExprLocalVar *phi) override
 sets the representative phi node (like a brute force set unioning operation) phi is the set representative More...
 
- Public Member Functions inherited from KSeExpr::ExprLocalVar
 ExprLocalVar (const ExprType &type)
 
virtual ~ExprLocalVar ()=default
 
 ExprLocalVar (ExprLocalVar &)=default
 
 ExprLocalVar (ExprLocalVar &&)=default
 
ExprLocalVaroperator= (const ExprLocalVar &)=default
 
ExprLocalVaroperator= (ExprLocalVar &&)=default
 
const ExprLocalVargetPhi () const
 get the primary representative phi node (i.e. the global parent of a dependent phi node) More...
 
ExprType type () const
 returns type of the variable More...
 
virtual void setType (const ExprType &type)
 setter for variable type More...
 
virtual LLVM_VALUE codegen (LLVM_BUILDER, const std::string &, LLVM_VALUE) LLVM_BASE
 LLVM value that has been allocated. More...
 
virtual LLVM_VALUE varPtr ()
 LLVM value that has been pre-done. More...
 
int buildInterpreter (Interpreter *interpreter) const
 Allocates variable for interpreter. More...
 

Public Attributes

ExprNode_condNode {nullptr}
 
ExprLocalVar_thenVar {nullptr}
 
ExprLocalVar_elseVar {nullptr}
 

Detailed Description

ExprLocalVar join (merge) references. Remembers which variables are possible assigners to this.

Definition at line 83 of file ExprEnv.h.

Constructor & Destructor Documentation

◆ ExprLocalVarPhi()

KSeExpr::ExprLocalVarPhi::ExprLocalVarPhi ( const ExprType condLife,
ExprLocalVar thenVar,
ExprLocalVar elseVar 
)
inline

Member Function Documentation

◆ setPhi()

void KSeExpr::ExprLocalVarPhi::setPhi ( ExprLocalVar phi)
inlineoverridevirtual

sets the representative phi node (like a brute force set unioning operation) phi is the set representative

Reimplemented from KSeExpr::ExprLocalVar.

Definition at line 107 of file ExprEnv.h.

References _elseVar, _thenVar, and KSeExpr::ExprLocalVar::setPhi().

◆ valid()

bool KSeExpr::ExprLocalVarPhi::valid ( ) const
inline

Member Data Documentation

◆ _condNode

ExprNode* KSeExpr::ExprLocalVarPhi::_condNode {nullptr}

Definition at line 114 of file ExprEnv.h.

◆ _elseVar

ExprLocalVar * KSeExpr::ExprLocalVarPhi::_elseVar {nullptr}

◆ _thenVar

ExprLocalVar* KSeExpr::ExprLocalVarPhi::_thenVar {nullptr}

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