aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/synth-vhdl_context.ads
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2021-08-28 10:37:18 +0200
committerTristan Gingold <tgingold@free.fr>2021-08-28 13:22:32 +0200
commit647afac5fd455238416cb07a9c6f638affe4ff8f (patch)
tree8617fe7c5bed7393558e293cb89b5720f1590c78 /src/synth/synth-vhdl_context.ads
parentdc91b1f1e16ef95511897546677f0fc46e381a0a (diff)
downloadghdl-647afac5fd455238416cb07a9c6f638affe4ff8f.tar.gz
ghdl-647afac5fd455238416cb07a9c6f638affe4ff8f.tar.bz2
ghdl-647afac5fd455238416cb07a9c6f638affe4ff8f.zip
synth: factorize code to create base instance
Diffstat (limited to 'src/synth/synth-vhdl_context.ads')
-rw-r--r--src/synth/synth-vhdl_context.ads13
1 files changed, 3 insertions, 10 deletions
diff --git a/src/synth/synth-vhdl_context.ads b/src/synth/synth-vhdl_context.ads
index eef073232..2329c4c0d 100644
--- a/src/synth/synth-vhdl_context.ads
+++ b/src/synth/synth-vhdl_context.ads
@@ -24,6 +24,7 @@ with Netlists.Builders; use Netlists.Builders;
with Vhdl.Annotations; use Vhdl.Annotations;
with Vhdl.Nodes; use Vhdl.Nodes;
+with Synth.Context; use Synth.Context;
with Synth.Vhdl_Environment; use Synth.Vhdl_Environment.Env;
with Synth.Objtypes; use Synth.Objtypes;
with Synth.Values; use Synth.Values;
@@ -40,7 +41,8 @@ package Synth.Vhdl_Context is
return Synth_Instance_Acc;
-- Create the first instance.
- function Make_Base_Instance return Synth_Instance_Acc;
+ function Make_Base_Instance (Base : Base_Instance_Acc)
+ return Synth_Instance_Acc;
-- Free the first instance.
procedure Free_Base_Instance;
@@ -159,15 +161,6 @@ private
type Objects_Array is array (Object_Slot_Type range <>) of Obj_Type;
- type Base_Instance_Type is limited record
- Builder : Context_Acc;
- Top_Module : Module;
-
- Cur_Module : Module;
- end record;
-
- type Base_Instance_Acc is access Base_Instance_Type;
-
type Synth_Instance_Type (Max_Objs : Object_Slot_Type) is limited record
Is_Const : Boolean;