diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-03-07 10:44:17 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-03-07 10:44:17 +0100 |
commit | 87907d6da96eb4bab35e8eb7aabc481e9b32e04c (patch) | |
tree | 0c147dad9e4c57e25c2bfff06a6be31eb2b9db65 /src/synth/netlists-cleanup.adb | |
parent | 8795c9031088fa5c9e5514bbce804bffd9ed6d6b (diff) | |
download | ghdl-87907d6da96eb4bab35e8eb7aabc481e9b32e04c.tar.gz ghdl-87907d6da96eb4bab35e8eb7aabc481e9b32e04c.tar.bz2 ghdl-87907d6da96eb4bab35e8eb7aabc481e9b32e04c.zip |
synthesis: handle initialized output ports.
Diffstat (limited to 'src/synth/netlists-cleanup.adb')
-rw-r--r-- | src/synth/netlists-cleanup.adb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/synth/netlists-cleanup.adb b/src/synth/netlists-cleanup.adb index d95267c88..991ca3ad7 100644 --- a/src/synth/netlists-cleanup.adb +++ b/src/synth/netlists-cleanup.adb @@ -126,6 +126,7 @@ package body Netlists.Cleanup is case Get_Id (Inst) is when Id_Output + | Id_Ioutput | Id_Port => declare Inp : Input; @@ -142,6 +143,12 @@ package body Netlists.Cleanup is else Disconnect (Get_First_Sink (O)); end if; + + if Get_Id (Inst) = Id_Ioutput then + -- Disconnect the initial value. + Disconnect (Get_Input (Inst, 1)); + end if; + Remove_Instance (Inst); end; when others => |