diff options
author | Tristan Gingold <tgingold@free.fr> | 2023-01-11 05:19:19 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2023-01-11 05:19:19 +0100 |
commit | a6281651d1d34215e793861f50f790dc890c797c (patch) | |
tree | dadd6819ffe4a81dbe9eb0b46dba525c34219bd9 /src | |
parent | bccafab9f706394f70cdf88dfbe12f711ead415c (diff) | |
download | ghdl-a6281651d1d34215e793861f50f790dc890c797c.tar.gz ghdl-a6281651d1d34215e793861f50f790dc890c797c.tar.bz2 ghdl-a6281651d1d34215e793861f50f790dc890c797c.zip |
simul: add sensitivity for psl processes
Diffstat (limited to 'src')
-rw-r--r-- | src/simul/simul-vhdl_simul.adb | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/simul/simul-vhdl_simul.adb b/src/simul/simul-vhdl_simul.adb index 54423a009..38cd2d925 100644 --- a/src/simul/simul-vhdl_simul.adb +++ b/src/simul/simul-vhdl_simul.adb @@ -2169,10 +2169,7 @@ package body Simul.Vhdl_Simul is (0 .. Get_PSL_Nbr_States (Stmt) - 1 => False); Proc.States (0) := True; - Grt.Processes.Ghdl_Process_Register - (To_Instance_Acc (Inst), PSL_Process_Executer'Access, - null, System.Null_Address); - + -- First the finalizers. case Get_Kind (Proc.Proc) is when Iir_Kind_Psl_Assert_Directive | Iir_Kind_Psl_Assume_Directive => @@ -2186,6 +2183,11 @@ package body Simul.Vhdl_Simul is when others => null; end case; + + -- Then the process, so that sensitivity can be added. + Grt.Processes.Ghdl_Process_Register + (To_Instance_Acc (Inst), PSL_Process_Executer'Access, + null, System.Null_Address); end Create_PSL; procedure Create_Processes @@ -2264,6 +2266,7 @@ package body Simul.Vhdl_Simul is Done => False, States => null); Create_PSL (Processes_State (I), Processes_State (I)'Address); + Register_Sensitivity (I); when others => Vhdl.Errors.Error_Kind ("create_processes", Proc); |