|
CIRCT 23.0.0git
|
Helper class for delay-aware tree building. More...
#include <SynthOps.h>

Public Member Functions | |
| ValueWithArrivalTime (mlir::Value value, int64_t arrivalTime, bool invert, size_t valueNumbering=0) | |
| mlir::Value | getValue () const |
| bool | isInverted () const |
| int64_t | getArrivalTime () const |
| ValueWithArrivalTime & | flipInversion () |
| bool | operator> (const ValueWithArrivalTime &other) const |
| Comparison operator for priority queue. | |
Private Attributes | |
| llvm::PointerIntPair< mlir::Value, 1, bool > | value |
| The value and an optional inversion flag packed together. | |
| int64_t | arrivalTime |
| The arrival time (delay) of this value in the circuit. | |
| size_t | valueNumbering = 0 |
| Value numbering for deterministic ordering when arrival times are equal. | |
Helper class for delay-aware tree building.
Stores a value along with its arrival time and inversion flag.
Definition at line 57 of file SynthOps.h.
|
inline |
Definition at line 71 of file SynthOps.h.
|
inline |
Definition at line 80 of file SynthOps.h.
References value.
|
inline |
Definition at line 78 of file SynthOps.h.
References arrivalTime.
|
inline |
Definition at line 76 of file SynthOps.h.
References value.
|
inline |
Definition at line 77 of file SynthOps.h.
References value.
|
inline |
Comparison operator for priority queue.
Values with earlier arrival times have higher priority. When arrival times are equal, use value numbering for determinism.
Definition at line 88 of file SynthOps.h.
References arrivalTime, and valueNumbering.
|
private |
The arrival time (delay) of this value in the circuit.
Definition at line 63 of file SynthOps.h.
Referenced by getArrivalTime(), and operator>().
|
private |
The value and an optional inversion flag packed together.
The inversion flag is used for AndInverterOp lowering.
Definition at line 60 of file SynthOps.h.
Referenced by flipInversion(), getValue(), synth.Object::is_output_port(), isInverted(), and Python.support.OpOperand::type().
|
private |
Value numbering for deterministic ordering when arrival times are equal.
This ensures consistent results across runs when multiple values have the same delay.
Definition at line 68 of file SynthOps.h.
Referenced by operator>().