KSeExpr 6.0.0.0
|
ExprLocalVar join (merge) references. Remembers which variables are possible assigners to this. More...
#include <ExprEnv.h>
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 | |
![]() | |
ExprLocalVar (const ExprType &type) | |
virtual | ~ExprLocalVar ()=default |
ExprLocalVar (ExprLocalVar &)=default | |
ExprLocalVar (ExprLocalVar &&)=default | |
ExprLocalVar & | operator= (const ExprLocalVar &)=default |
ExprLocalVar & | operator= (ExprLocalVar &&)=default |
const ExprLocalVar * | getPhi () const |
get the primary representative phi node (i.e. the global parent of a dependent phi node) | |
ExprType | type () const |
returns type of the variable | |
virtual void | setType (const ExprType &type) |
setter for variable type | |
virtual LLVM_VALUE | codegen (LLVM_BUILDER, const std::string &, LLVM_VALUE) LLVM_BASE |
LLVM value that has been allocated. | |
virtual LLVM_VALUE | varPtr () |
LLVM value that has been pre-done. | |
int | buildInterpreter (Interpreter *interpreter) const |
Allocates variable for interpreter. | |
Public Attributes | |
ExprNode * | _condNode {nullptr} |
ExprLocalVar * | _thenVar {nullptr} |
ExprLocalVar * | _elseVar {nullptr} |
ExprLocalVar join (merge) references. Remembers which variables are possible assigners to this.
|
inline |
Definition at line 86 of file ExprEnv.h.
References _elseVar, _thenVar, KSeExpr::ExprLocalVar::setType(), KSeExpr::ExprLocalVar::type(), and KSeExpr::ExprType::valuesCompatible().
|
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().
|
inline |
Definition at line 102 of file ExprEnv.h.
References KSeExpr::ExprType::isError(), and KSeExpr::ExprLocalVar::type().
ExprLocalVar * KSeExpr::ExprLocalVarPhi::_elseVar {nullptr} |
Definition at line 115 of file ExprEnv.h.
Referenced by ExprLocalVarPhi(), and setPhi().
ExprLocalVar* KSeExpr::ExprLocalVarPhi::_thenVar {nullptr} |
Definition at line 115 of file ExprEnv.h.
Referenced by ExprLocalVarPhi(), and setPhi().