|
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 | |
Public Member Functions inherited from KSeExpr::ExprLocalVar | |
| 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().