clash-lib-1.10.0: prims/commonverilog/Clash_Explicit_SimIO.primitives.yaml
- Primitive:
name: Clash.Explicit.SimIO.mealyIO
primType: Function
- BlackBox:
name: Clash.Explicit.SimIO.display
kind: Declaration
renderVoid: RenderVoid
template: $display(~ARG[0]);
- BlackBox:
name: Clash.Explicit.SimIO.finish
kind: Declaration
renderVoid: RenderVoid
template: |-
`ifdef VERILATOR
$c("std::exit(~LIT[0]);");
`else
// NOTE: $finish_and_return is an iverilog extension!
$finish_and_return(~LIT[0]);
`endif
- BlackBox:
name: Clash.Explicit.SimIO.reg
kind: Expression
template: ~ARG[0]
- BlackBox:
name: Clash.Explicit.SimIO.readReg
kind: Expression
template: ~ARG[0]
- BlackBox:
name: Clash.Explicit.SimIO.writeReg
kind: Declaration
renderVoid: RenderVoid
outputUsage: Blocking
template: ~ARG[0] = ~ARG[1];
- BlackBox:
name: Clash.Explicit.SimIO.openFile
kind: Expression
template: $fopen(~FILE[~LIT[0]],~LIT[1])
- BlackBox:
name: Clash.Explicit.SimIO.closeFile
kind: Declaration
renderVoid: RenderVoid
template: $fclose(~ARG[0]);
- BlackBox:
name: Clash.Explicit.SimIO.getChar
kind: Expression
template: $fgetc(~ARG[0])
- BlackBox:
name: Clash.Explicit.SimIO.putChar
kind: Declaration
renderVoid: RenderVoid
template: $ungetc(~ARG[0],~ARG[1]);
- BlackBox:
name: Clash.Explicit.SimIO.getLine
kind: Declaration
outputUsage: Blocking
template: ~RESULT = $fgets(~ARG[2],~ARG[1]);
- BlackBox:
name: Clash.Explicit.SimIO.isEOF
kind: Expression
template: $feof(~ARG[0])
- BlackBox:
name: Clash.Explicit.SimIO.flush
kind: Declaration
renderVoid: RenderVoid
template: $fflush(~ARG[0]);
- BlackBox:
name: Clash.Explicit.SimIO.seek
kind: Declaration
outputUsage: Blocking
template: ~RESULT = $fseek(~ARG[0],~ARG[1],~ARG[2]);
- BlackBox:
name: Clash.Explicit.SimIO.rewind
kind: Declaration
outputUsage: Blocking
template: ~RESULT = $rewind(~ARG[0]);
- BlackBox:
name: Clash.Explicit.SimIO.tell
kind: Expression
template: $ftell(~ARG[0])
- Primitive:
name: Clash.Explicit.SimIO.fmapSimIO#
primType: Function
- Primitive:
name: Clash.Explicit.SimIO.pureSimIO#
primType: Function
- Primitive:
name: Clash.Explicit.SimIO.apSimIO#
primType: Function
- Primitive:
name: Clash.Explicit.SimIO.bindSimIO#
primType: Function
- Primitive:
name: Clash.Explicit.SimIO.unSimIO
primType: Function