calyx
calyx copied to clipboard
Add a `fud` stage to go through the MLIR backend and use CIRCT to compile all the way to Verilog.
@rachitnigam brought this up on the CIRCT PR and issue about compiling Calyx to CIRCT's core dialects: https://github.com/llvm/circt/issues/2892#issuecomment-1128162272.
Quoting that comment:
A reasonable next goal is to lower all the correctness tests in the Calyx test suite (https://github.com/cucapra/calyx/tree/master/tests/correctness) and see if they retain functionality. An easy way to do this would be to add a new fud stage that invoke the MLIR stack to compile Calyx programs to verilog.
This would allow us to test the CIRCT handling of structural Calyx, and make sure the optimizations and Verilog export in CIRCT maintain the same functionality as the native Calyx handling and export.
This would be a wonderful idea.