diff options
author | Tristan Gingold <tgingold@free.fr> | 2022-06-27 19:28:01 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2022-06-27 19:37:33 +0200 |
commit | a036958a9adc31011729aab02af9eec48f80bc8a (patch) | |
tree | 2534000aaa570fde4d0359cf0c969f0d8a7a44cd /src/synth/netlists-cleanup.ads | |
parent | 060840d4176d7e5b775616e8a702bd751765c753 (diff) | |
download | ghdl-a036958a9adc31011729aab02af9eec48f80bc8a.tar.gz ghdl-a036958a9adc31011729aab02af9eec48f80bc8a.tar.bz2 ghdl-a036958a9adc31011729aab02af9eec48f80bc8a.zip |
synth: rework #2109 - remove null wires
Diffstat (limited to 'src/synth/netlists-cleanup.ads')
-rw-r--r-- | src/synth/netlists-cleanup.ads | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/synth/netlists-cleanup.ads b/src/synth/netlists-cleanup.ads index be4f0e0fb..a13e66c47 100644 --- a/src/synth/netlists-cleanup.ads +++ b/src/synth/netlists-cleanup.ads @@ -16,6 +16,8 @@ -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <gnu.org/licenses>. +with Netlists.Builders; use Netlists.Builders; + package Netlists.Cleanup is -- Remove instances of module M whose outputs are not connected. -- Their inputs will be deconnected, which can result in new instances @@ -26,6 +28,10 @@ package Netlists.Cleanup is -- sweep algorithm. procedure Mark_And_Sweep (M : Module); + -- Reconnection inputs of width 0 (the null inputs) to an Const_X gate. + -- This will make all the null logic unconnected and ready to be cleaned. + procedure Replace_Null_Inputs (Ctxt : Context_Acc; M : Module); + -- Remove Id_Output gates. procedure Remove_Output_Gates (M : Module); end Netlists.Cleanup; |