diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-01-12 17:33:00 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-01-12 17:33:00 +0100 |
commit | d0c3134c2113527256354644d7cb0df4efc85aac (patch) | |
tree | 972672776c4ea5b9658e82409193f88bba5b5a08 /src/synth/netlists-utils.adb | |
parent | 090eba96ac739af8557555bba7ec1f31f811c2f0 (diff) | |
download | ghdl-d0c3134c2113527256354644d7cb0df4efc85aac.tar.gz ghdl-d0c3134c2113527256354644d7cb0df4efc85aac.tar.bz2 ghdl-d0c3134c2113527256354644d7cb0df4efc85aac.zip |
netlists-memories: allow intermediate signals to detect sync read.
Fix #1079
Diffstat (limited to 'src/synth/netlists-utils.adb')
-rw-r--r-- | src/synth/netlists-utils.adb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/synth/netlists-utils.adb b/src/synth/netlists-utils.adb index 59eb086d5..3f9a9fd46 100644 --- a/src/synth/netlists-utils.adb +++ b/src/synth/netlists-utils.adb @@ -175,6 +175,18 @@ package body Netlists.Utils is end case; end Get_Net_Element; + function Skip_Signal (N : Net) return Net + is + Inst : constant Instance := Get_Net_Parent (N); + begin + case Get_Id (Inst) is + when Id_Signal => + return Get_Input_Net (Inst, 0); + when others => + return N; + end case; + end Skip_Signal; + function Is_Connected (O : Net) return Boolean is begin return Get_First_Sink (O) /= No_Input; |