aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/elab-vhdl_context.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2022-12-25 20:25:28 +0100
committerTristan Gingold <tgingold@free.fr>2022-12-26 10:25:20 +0100
commit8a6be3328e812256abd7b01e965ac60630a70888 (patch)
tree027b0ccd357f337c3d0bab6dbf027367f9d78b5e /src/synth/elab-vhdl_context.adb
parentde6ca601a8e016b17b161d1e0fb4e0528381a977 (diff)
downloadghdl-8a6be3328e812256abd7b01e965ac60630a70888.tar.gz
ghdl-8a6be3328e812256abd7b01e965ac60630a70888.tar.bz2
ghdl-8a6be3328e812256abd7b01e965ac60630a70888.zip
synth: add value_sig_val to handle individual signal associations
Diffstat (limited to 'src/synth/elab-vhdl_context.adb')
-rw-r--r--src/synth/elab-vhdl_context.adb25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/synth/elab-vhdl_context.adb b/src/synth/elab-vhdl_context.adb
index 136cc50f0..d77b8ea6e 100644
--- a/src/synth/elab-vhdl_context.adb
+++ b/src/synth/elab-vhdl_context.adb
@@ -53,6 +53,7 @@ package body Elab.Vhdl_Context is
new Synth_Instance_Type'(Max_Objs => Global_Info.Nbr_Objects,
Is_Const => False,
Is_Error => False,
+ Flag1 | Flag2 => False,
Id => Inst_Tables.Last + 1,
Block_Scope => Global_Info,
Up_Block => null,
@@ -101,6 +102,7 @@ package body Elab.Vhdl_Context is
Res := new Synth_Instance_Type'(Max_Objs => Nbr_Objs,
Is_Const => False,
Is_Error => False,
+ Flag1 | Flag2 => False,
Id => Inst_Tables.Last + 1,
Block_Scope => Scope,
Up_Block => Parent,
@@ -142,6 +144,7 @@ package body Elab.Vhdl_Context is
Res := new Synth_Instance_Type'(Max_Objs => Object_Slot_Type (Len),
Is_Const => False,
Is_Error => False,
+ Flag1 | Flag2 => False,
Id => Inst_Tables.Last + 1,
Block_Scope => Info,
Up_Block => Parent,
@@ -237,6 +240,28 @@ package body Elab.Vhdl_Context is
return Inst.Foreign;
end Get_Instance_Foreign;
+ procedure Set_Indiv_Signal_Assoc_Flag (Inst : Synth_Instance_Acc) is
+ begin
+ Inst.Flag1 := True;
+ end Set_Indiv_Signal_Assoc_Flag;
+
+ function Get_Indiv_Signal_Assoc_Flag (Inst : Synth_Instance_Acc)
+ return Boolean is
+ begin
+ return Inst.Flag1;
+ end Get_Indiv_Signal_Assoc_Flag;
+
+ procedure Set_Indiv_Signal_Assoc_Parent_Flag (Inst : Synth_Instance_Acc) is
+ begin
+ Inst.Flag2 := True;
+ end Set_Indiv_Signal_Assoc_Parent_Flag;
+
+ function Get_Indiv_Signal_Assoc_Parent_Flag (Inst : Synth_Instance_Acc)
+ return Boolean is
+ begin
+ return Inst.Flag2;
+ end Get_Indiv_Signal_Assoc_Parent_Flag;
+
procedure Add_Extra_Instance (Inst : Synth_Instance_Acc;
Extra : Synth_Instance_Acc) is
begin