diff options
author | Tristan Gingold <tgingold@free.fr> | 2022-08-21 10:37:29 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2022-08-21 10:37:29 +0200 |
commit | 80a102249d96b8463de27c35c5ec744bee4e4e43 (patch) | |
tree | e3127fe55bd3d22d1b1ced0f6a7cc0553a7318f5 /src/grt | |
parent | 50cc406f59c3b9b063b47b4fada0d6a5e590f03c (diff) | |
download | ghdl-80a102249d96b8463de27c35c5ec744bee4e4e43.tar.gz ghdl-80a102249d96b8463de27c35c5ec744bee4e4e43.tar.bz2 ghdl-80a102249d96b8463de27c35c5ec744bee4e4e43.zip |
simul: handle after clauses in signal assignment
Diffstat (limited to 'src/grt')
-rw-r--r-- | src/grt/grt-signals.adb | 12 | ||||
-rw-r--r-- | src/grt/grt-signals.ads | 6 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/grt/grt-signals.adb b/src/grt/grt-signals.adb index 02bfd4753..b88aaf026 100644 --- a/src/grt/grt-signals.adb +++ b/src/grt/grt-signals.adb @@ -1076,6 +1076,18 @@ package body Grt.Signals is Ghdl_Signal_Start_Assign (Sign, 0, Trans, 0); end Ghdl_Signal_Simple_Assign_B1; + procedure Ghdl_Signal_Start_Assign_Any (Sign : Ghdl_Signal_Ptr; + Rej : Std_Time; + Val : Value_Union; + After : Std_Time) + is + Trans : Transaction_Acc; + begin + Trans := new Transaction' + (Kind => Trans_Value, Line => 0, Time => 0, Next => null, Val => Val); + Ghdl_Signal_Start_Assign (Sign, Rej, Trans, After); + end Ghdl_Signal_Start_Assign_Any; + procedure Ghdl_Signal_Start_Assign_B1 (Sign : Ghdl_Signal_Ptr; Rej : Std_Time; Val : Ghdl_B1; diff --git a/src/grt/grt-signals.ads b/src/grt/grt-signals.ads index 3c605786b..125cbff7f 100644 --- a/src/grt/grt-signals.ads +++ b/src/grt/grt-signals.ads @@ -599,6 +599,12 @@ package Grt.Signals is function Ghdl_Signal_Driving (Sig : Ghdl_Signal_Ptr) return Ghdl_B1; + -- Generic version. + procedure Ghdl_Signal_Start_Assign_Any (Sign : Ghdl_Signal_Ptr; + Rej : Std_Time; + Val : Value_Union; + After : Std_Time); + function Ghdl_Create_Signal_B1 (Val_Ptr : Ghdl_Value_Ptr; Resolv_Func : Resolver_Acc; Resolv_Inst : System.Address) |