cxxrtl: unbuffer module input wires.
authorwhitequark <whitequark@whitequark.org>
Tue, 21 Apr 2020 14:49:36 +0000 (14:49 +0000)
committerwhitequark <whitequark@whitequark.org>
Tue, 21 Apr 2020 15:27:19 +0000 (15:27 +0000)
commit06985c3afdba579d0bba266bb6daba0101358ad5
tree1d27be1d2228304c1831f9601413038f71e48704
parent12c5e9275c115104896d3c53f0bbdf3fc0c6f37d
cxxrtl: unbuffer module input wires.

Module input wires are never set by the module, so it is unnecessary
to buffer them. Although important for all inputs, this is especially
critical for clocks, since after this commit, hierarchy levels no
longer add delta cycles. As a result, Minerva SRAM SoC runs ~73%
faster when flattened, and ~264% (!!) faster when hierarchical.
backends/cxxrtl/cxxrtl.cc