aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/synth-values.ads
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-09-08 07:49:53 +0200
committerTristan Gingold <tgingold@free.fr>2019-09-11 06:37:26 +0200
commit67333b39047b444ea93f1efcabf7ea7b0371a972 (patch)
treef999cda95e5f42d745f149f29ce2b06a3e148304 /src/synth/synth-values.ads
parent2b3a1bb316317453d4e40bc3a650b4ed07eee7a8 (diff)
downloadghdl-67333b39047b444ea93f1efcabf7ea7b0371a972.tar.gz
ghdl-67333b39047b444ea93f1efcabf7ea7b0371a972.tar.bz2
ghdl-67333b39047b444ea93f1efcabf7ea7b0371a972.zip
synth: handle alias (WIP, read only).
Diffstat (limited to 'src/synth/synth-values.ads')
-rw-r--r--src/synth/synth-values.ads11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/synth/synth-values.ads b/src/synth/synth-values.ads
index e7d5acc20..a0db0f5fb 100644
--- a/src/synth/synth-values.ads
+++ b/src/synth/synth-values.ads
@@ -147,7 +147,10 @@ package Synth.Values is
-- A package.
Value_Instance,
- -- A subtype.
+ -- An alias
+ Value_Alias,
+
+ -- A subtype. Contains only a type.
Value_Subtype
);
@@ -191,6 +194,9 @@ package Synth.Values is
Rec : Value_Array_Acc;
when Value_Instance =>
Instance : Instance_Id;
+ when Value_Alias =>
+ A_Wid : Wire_Id;
+ A_Off : Uns32;
end case;
end record;
@@ -262,6 +268,9 @@ package Synth.Values is
function Create_Value_Instance (Inst : Instance_Id) return Value_Acc;
+ function Create_Value_Alias (Wid : Wire_Id; Off : Uns32; Typ : Type_Acc)
+ return Value_Acc;
+
function Unshare (Src : Value_Acc; Pool : Areapool_Acc)
return Value_Acc;