circt
circt copied to clipboard
[Arc] Flatten public modules
trafficstars
Arcilator is currently very easy to break if a public module is instantiated anywhere. In that case the module hierarchy does not get flattened completely, but the public module remains as an instance instead. This makes the instance behave like an external module. Fix the module flattening to also fully inline public modules (but instead also keep the public module itself around as a top-level entry point).