circt
circt copied to clipboard
[LLHD] Replace entity with module
- use
!hw.inoutinstead of!llhd.sigto make things work withhw.module(since inout types don't allow nested signals) - remove the
llhd.entityoperation and use thehw.moduleinstead. This has two disadvantages: (1) all ports are now inout instead of separated in and out ports, however this was never verified in LLHD anyways and out ports were always more like inout, (2) instance and signal names cannot be verified to be unique within one module anymore - the HWToLLHD pass is removed because it only converted
hw.moduletollhd.entityandhw.instancetollhd.inst. We can potentially implement the ModuleLike interface for ProcOp and get rid ofllhd.instas well. - the function inlining pass does not work yet
This is awesome :heart_eyes: !