CIRCT
20.0.0git
|
Values which can be used as pointers to different values. More...
#include <Evaluator.h>
Public Member Functions | |
ReferenceValue (Type type, Location loc) | |
Type | getValueType () const |
EvaluatorValuePtr | getValue () const |
void | setValue (EvaluatorValuePtr newValue) |
LogicalResult | finalizeImpl () |
FailureOr< EvaluatorValuePtr > | getStrippedValue () const |
Public Member Functions inherited from circt::om::evaluator::EvaluatorValue | |
EvaluatorValue (MLIRContext *ctx, Kind kind, Location loc) | |
Kind | getKind () const |
MLIRContext * | getContext () const |
bool | isFullyEvaluated () const |
void | markFullyEvaluated () |
MLIRContext * | getContext () |
Return the associated MLIR context. More... | |
Type | getType () const |
LogicalResult | finalize () |
Location | getLoc () const |
void | setLoc (Location l) |
void | setLocIfUnknown (Location l) |
Static Public Member Functions | |
static bool | classof (const EvaluatorValue *e) |
Private Attributes | |
EvaluatorValuePtr | value |
Type | type |
Additional Inherited Members | |
Public Types inherited from circt::om::evaluator::EvaluatorValue | |
enum class | Kind { Attr , Object , List , Tuple , Map , Reference , BasePath , Path } |
Values which can be used as pointers to different values.
ReferenceValue is replaced with its element and erased at the end of evaluation.
Definition at line 93 of file Evaluator.h.
|
inline |
Definition at line 94 of file Evaluator.h.
|
inlinestatic |
Definition at line 99 of file Evaluator.h.
References circt::om::evaluator::EvaluatorValue::getKind(), and circt::om::evaluator::EvaluatorValue::Reference.
LogicalResult circt::om::evaluator::ReferenceValue::finalizeImpl | ( | ) |
Definition at line 801 of file Evaluator.cpp.
|
inline |
Definition at line 114 of file Evaluator.h.
References value.
|
inline |
Definition at line 104 of file Evaluator.h.
References value.
|
inline |
Definition at line 103 of file Evaluator.h.
References type.
|
inline |
Definition at line 105 of file Evaluator.h.
References circt::om::evaluator::EvaluatorValue::markFullyEvaluated(), and value.
|
private |
Definition at line 128 of file Evaluator.h.
Referenced by fsm.MachineOp::__init__(), esiaccel.types.WritePort::__serialize_msg(), hw.HWModuleOp::add_entry_block(), esiaccel.types.Port::connect(), getValueType(), hw.HWModuleOp::input_indices(), fsm.MachineOp::instantiate(), hw.HWModuleOp::outputs(), and esiaccel.types.ReadPort::read().
|
private |
Definition at line 127 of file Evaluator.h.
Referenced by getStrippedValue(), getValue(), setValue(), and Python.support.OpOperand::type().