diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-08-25 20:21:05 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-08-26 04:48:18 +0200 |
commit | 2559d822bce164556652e616611a93590fd241c6 (patch) | |
tree | 7a75234bdff3bd16f1c094701c23b89251ddff1c /src/vhdl/translate/trans-chap7.ads | |
parent | 870104dd233bae832c628fce15da0e99d26289cb (diff) | |
download | ghdl-2559d822bce164556652e616611a93590fd241c6.tar.gz ghdl-2559d822bce164556652e616611a93590fd241c6.tar.bz2 ghdl-2559d822bce164556652e616611a93590fd241c6.zip |
vhdl/translate: handle vhdl-93 'last_value. Fix #1440
Diffstat (limited to 'src/vhdl/translate/trans-chap7.ads')
-rw-r--r-- | src/vhdl/translate/trans-chap7.ads | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/vhdl/translate/trans-chap7.ads b/src/vhdl/translate/trans-chap7.ads index 5e52caebd..e4b316637 100644 --- a/src/vhdl/translate/trans-chap7.ads +++ b/src/vhdl/translate/trans-chap7.ads @@ -17,19 +17,22 @@ -- 02111-1307, USA. package Trans.Chap7 is + -- Allocate a value (with the same bounds) on the stack for SIG. + -- Note: SIG must be stable. + function Allocate_Value_From_Signal (Sig : Mnode; Sig_Type : Iir) + return Mnode; + -- Generic function to extract a value from a signal. generic with function Read_Value (Sig : O_Enode; Sig_Type : Iir) return O_Enode; - function Translate_Signal_Value (Sig : O_Enode; Sig_Type : Iir) - return O_Enode; + function Translate_Signal_Value (Sig : Mnode; Sig_Type : Iir) return Mnode; - function Translate_Signal_Driving_Value (Sig : O_Enode; Sig_Type : Iir) - return O_Enode; + function Translate_Signal_Driving_Value (Sig : Mnode; Sig_Type : Iir) + return Mnode; -- For conversions. - procedure Set_Driving_Value - (Sig : Mnode; Sig_Type : Iir; Val : Mnode); + procedure Set_Driving_Value (Sig : Mnode; Sig_Type : Iir; Val : Mnode); -- Translate expression EXPR into ortho tree. function Translate_Expression (Expr : Iir; Rtype : Iir := Null_Iir) |