13 #ifndef CIRCT_DIALECT_LLHD_SIMULATOR_SIGNALS_RUNTIME_WRAPPERS_H
14 #define CIRCT_DIALECT_LLHD_SIMULATOR_SIGNALS_RUNTIME_WRAPPERS_H
27 uint8_t *value, int64_t size);
37 unsigned offset,
unsigned size);
45 uint8_t *entityState);
50 uint64_t
width,
int time,
int delta,
int eps);
MlirType uint64_t numElements
void addSigArrayElements(circt::llhd::sim::State *state, unsigned index, unsigned size, unsigned numElements)
Add offset and size information for the elements of an array signal.
void addSigStructElement(circt::llhd::sim::State *state, unsigned index, unsigned offset, unsigned size)
Add offset and size information for one element of a struct signal.
int allocSignal(circt::llhd::sim::State *state, int index, char *owner, uint8_t *value, int64_t size)
Allocate a new signal.
void allocProc(circt::llhd::sim::State *state, char *owner, circt::llhd::sim::ProcState *procState)
Add allocated constructs to a process instance.
void driveSignal(circt::llhd::sim::State *state, circt::llhd::sim::SignalDetail *index, uint8_t *value, uint64_t width, int time, int delta, int eps)
Drive a value onto a signal.
void llhdSuspend(circt::llhd::sim::State *state, circt::llhd::sim::ProcState *procState, int time, int delta, int eps)
Suspend a process.
void allocEntity(circt::llhd::sim::State *state, char *owner, uint8_t *entityState)
Add allocated entity state to the given instance.
State structure for process persistence across suspension.
Detail structure that can be easily accessed by the lowered code.