aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/translate/translation.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2015-09-04 21:52:38 +0200
committerTristan Gingold <tgingold@free.fr>2015-09-04 21:52:38 +0200
commit8520993b4d1eadefa488dfc96dff25333f1b19db (patch)
tree818d4fe917d3e6b765932ed3d1ab1ee70dc3c508 /src/vhdl/translate/translation.adb
parent2d8f611cb63b72aa0373efe0ffa0df47e25519c9 (diff)
downloadghdl-8520993b4d1eadefa488dfc96dff25333f1b19db.tar.gz
ghdl-8520993b4d1eadefa488dfc96dff25333f1b19db.tar.bz2
ghdl-8520993b4d1eadefa488dfc96dff25333f1b19db.zip
Suppress stack switching; save process state in secondary stack.
Diffstat (limited to 'src/vhdl/translate/translation.adb')
-rw-r--r--src/vhdl/translate/translation.adb13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/vhdl/translate/translation.adb b/src/vhdl/translate/translation.adb
index a3d2375a7..d83758418 100644
--- a/src/vhdl/translate/translation.adb
+++ b/src/vhdl/translate/translation.adb
@@ -392,6 +392,7 @@ package body Translation is
Wki_R_Len := Get_Identifier ("r_len");
Wki_Base := Get_Identifier ("BASE");
Wki_Bounds := Get_Identifier ("BOUNDS");
+ Wki_Locvars := Get_Identifier ("LOCVARS");
Sizetype := New_Unsigned_Type (32);
New_Type_Decl (Get_Identifier ("__ghdl_size_type"), Sizetype);
@@ -1676,12 +1677,18 @@ package body Translation is
New_Interface_Decl (Interfaces, Param, Wki_Sig, Ghdl_Signal_Ptr);
Finish_Subprogram_Decl (Interfaces, Ghdl_Process_Wait_Add_Sensitivity);
- -- function __ghdl_process_wait_suspend return __ghdl_bool_type;
- Start_Function_Decl
+ -- procedure __ghdl_process_wait_suspend (void);
+ Start_Procedure_Decl
(Interfaces, Get_Identifier ("__ghdl_process_wait_suspend"),
- O_Storage_External, Ghdl_Bool_Type);
+ O_Storage_External);
Finish_Subprogram_Decl (Interfaces, Ghdl_Process_Wait_Suspend);
+ -- function __ghdl_process_wait_timed_out return __ghdl_bool_type;
+ Start_Function_Decl
+ (Interfaces, Get_Identifier ("__ghdl_process_wait_timed_out"),
+ O_Storage_External, Ghdl_Bool_Type);
+ Finish_Subprogram_Decl (Interfaces, Ghdl_Process_Wait_Timed_Out);
+
-- void __ghdl_process_wait_close (void);
Start_Procedure_Decl
(Interfaces, Get_Identifier ("__ghdl_process_wait_close"),