diff options
author | Tristan Gingold <tgingold@free.fr> | 2021-12-06 20:47:04 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2021-12-06 20:47:54 +0100 |
commit | 88425cb365578cacd46939d93f837b2ac7b0d5e8 (patch) | |
tree | 2814506e2fd3ea50a5774b04faf53725f18fb82c /src/synth | |
parent | c7943754f3fbab8e61fed389f4c3f3918ec37332 (diff) | |
download | ghdl-88425cb365578cacd46939d93f837b2ac7b0d5e8.tar.gz ghdl-88425cb365578cacd46939d93f837b2ac7b0d5e8.tar.bz2 ghdl-88425cb365578cacd46939d93f837b2ac7b0d5e8.zip |
synth: add --latches option to enable latches. Fix #938
Diffstat (limited to 'src/synth')
-rw-r--r-- | src/synth/netlists-inference.adb | 6 | ||||
-rw-r--r-- | src/synth/netlists-inference.ads | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/synth/netlists-inference.adb b/src/synth/netlists-inference.adb index 6da07e19a..383211684 100644 --- a/src/synth/netlists-inference.adb +++ b/src/synth/netlists-inference.adb @@ -780,7 +780,11 @@ package body Netlists.Inference is else Name := Get_Instance_Name (Get_Net_Parent (Prev_Val)); end if; - Error_Msg_Synth (Loc, "latch infered for net %n", +Name); + + if not Flag_Latches then + Error_Msg_Synth + (Loc, "latch infered for net %n (use --latches)", +Name); + end if; return Val; end Infere_Latch; diff --git a/src/synth/netlists-inference.ads b/src/synth/netlists-inference.ads index 61eab9fb2..ae671a0ac 100644 --- a/src/synth/netlists-inference.ads +++ b/src/synth/netlists-inference.ads @@ -20,6 +20,9 @@ with Netlists; use Netlists; with Netlists.Builders; use Netlists.Builders; package Netlists.Inference is + -- If True, latches are allowed. + Flag_Latches : Boolean := False; + -- Walk the And-net N, and extract clock (posedge/negedge) if found. -- ENABLE is N without the clock. -- If not found, CLK and ENABLE are set to No_Net. |