aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/synth/synth-stmts.adb12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/synth/synth-stmts.adb b/src/synth/synth-stmts.adb
index 6a7081810..8717842d9 100644
--- a/src/synth/synth-stmts.adb
+++ b/src/synth/synth-stmts.adb
@@ -369,6 +369,18 @@ package body Synth.Stmts is
Set_Location (N, Loc);
return Create_Value_Net (N, Typ);
end;
+ when Value_Memory =>
+ declare
+ Res : Valtyp;
+ begin
+ Res := Create_Value_Memory (Typ);
+ -- Need to reverse offsets.
+ Copy_Memory
+ (Res.Val.Mem,
+ Val.Val.Mem + (Val.Typ.Sz - Size_Type (Off + 1) * El_Typ.Sz),
+ Typ.Sz);
+ return Res;
+ end;
when others =>
raise Internal_Error;
end case;