Titan.mlir:4:10: error: 'hw.bitcast' op result #0 must be Type wherein the bitwidth in hardware is known, but got '!seq.clock'
%b = firrtl.invalidvalue : !firrtl.clock
^
Titan.mlir:4:10: note: see current operation: %2 = "hw.bitcast"(%0) : (i1) -> !seq.clock
While LowerToHW shouldn't fail, it is also unexpected to see an invalid value at LowerToHW. This should have been converted to a special constant zero during SFCCompat, but it was not. 🤔
The following fails verification after
circt-opt -lower-firrtl-to-hw
:This fails with:
The illegal MLIR being produced is: