summaryrefslogtreecommitdiff
path: root/translate/grt/grt-processes.ads
diff options
context:
space:
mode:
authorgingold2005-11-22 16:09:10 +0000
committergingold2005-11-22 16:09:10 +0000
commit171548c9d708fc13f5b6d3edde30630ee04bd06e (patch)
tree181c2a4f230ec445277ec4ed6a25c73f25aab3e2 /translate/grt/grt-processes.ads
parent20e31a50417e5452dcc5797d27dc1383253e3161 (diff)
downloadghdl-171548c9d708fc13f5b6d3edde30630ee04bd06e.tar.gz
ghdl-171548c9d708fc13f5b6d3edde30630ee04bd06e.tar.bz2
ghdl-171548c9d708fc13f5b6d3edde30630ee04bd06e.zip
more optimizations + bug fixes
Diffstat (limited to 'translate/grt/grt-processes.ads')
-rw-r--r--translate/grt/grt-processes.ads20
1 files changed, 16 insertions, 4 deletions
diff --git a/translate/grt/grt-processes.ads b/translate/grt/grt-processes.ads
index 2ef0653..777b9dd 100644
--- a/translate/grt/grt-processes.ads
+++ b/translate/grt/grt-processes.ads
@@ -16,6 +16,7 @@
-- Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-- 02111-1307, USA.
with System;
+with GNAT.Table;
with Grt.Stack2; use Grt.Stack2;
with Grt.Types; use Grt.Types;
with Grt.Signals; use Grt.Signals;
@@ -118,10 +119,7 @@ package Grt.Processes is
procedure Ghdl_Protected_Init (Obj : System.Address);
procedure Ghdl_Protected_Fini (Obj : System.Address);
- type Process_Type is private;
- type Process_Acc is access all Process_Type;
-private
- -- Access to a process subprogram.
+ -- Access to a process subprogram.
type Proc_Acc is access procedure (Self : System.Address);
-- Simply linked list for sensitivity.
@@ -180,8 +178,22 @@ private
-- Sensitivity list.
Sensitivity : Sensitivity_Acc;
+
+ Stats_Time : Ghdl_U64;
+ Stats_Run : Ghdl_U32;
end record;
+ type Process_Acc is access all Process_Type;
+
+ -- Table of processes.
+ package Process_Table is new GNAT.Table
+ (Table_Component_Type => Process_Type,
+ Table_Index_Type => Process_Id,
+ Table_Low_Bound => 1,
+ Table_Initial => 16,
+ Table_Increment => 100);
+private
+
pragma Export (C, Ghdl_Process_Register,
"__ghdl_process_register");
pragma Export (C, Ghdl_Sensitized_Process_Register,