aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/simulate/iir_values.ads
diff options
context:
space:
mode:
Diffstat (limited to 'src/vhdl/simulate/iir_values.ads')
-rw-r--r--src/vhdl/simulate/iir_values.ads10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/vhdl/simulate/iir_values.ads b/src/vhdl/simulate/iir_values.ads
index 292e8424a..a134df438 100644
--- a/src/vhdl/simulate/iir_values.ads
+++ b/src/vhdl/simulate/iir_values.ads
@@ -114,8 +114,11 @@ package Iir_Values is
Iir_Value_Quantity,
Iir_Value_Environment);
- type Protected_Index_Type is new Natural;
+ -- Uniq identifier for scalar signal. First identifier is 'First + 1.
+ type Signal_Index_Type is new Natural;
+ function Get_Last_Signal_Index return Signal_Index_Type;
+ type Protected_Index_Type is new Natural;
type Quantity_Index_Type is new Natural;
type Terminal_Index_Type is new Natural;
type Environment_Index_Type is new Natural;
@@ -134,6 +137,9 @@ package Iir_Values is
subtype Iir_Value_Numerics is
Iir_Value_Kind range Iir_Value_I64 .. Iir_Value_F64;
+ subtype Iir_Value_Physicals is
+ Iir_Value_Kind range Iir_Value_I64 .. Iir_Value_I64;
+
type Iir_Value_Literal (Kind: Iir_Value_Kind);
type Iir_Value_Literal_Acc is access Iir_Value_Literal;
@@ -180,6 +186,8 @@ package Iir_Values is
Val_Record: Value_Array_Acc; -- range 1 .. N
when Iir_Value_Signal =>
Sig : Ghdl_Signal_Ptr;
+ -- Each signal has a uniq identifier.
+ Sig_Id : Signal_Index_Type;
when Iir_Value_Protected =>
Prot : Protected_Index_Type;
when Iir_Value_Quantity =>