aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/atree.adb
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/atree.adb')
-rw-r--r--gcc/ada/atree.adb16
1 files changed, 10 insertions, 6 deletions
diff --git a/gcc/ada/atree.adb b/gcc/ada/atree.adb
index 0505b86..16feee0 100644
--- a/gcc/ada/atree.adb
+++ b/gcc/ada/atree.adb
@@ -519,9 +519,9 @@ package body Atree is
Table_Component_Type => Node_Id,
Table_Index_Type => Node_Id'Base,
Table_Low_Bound => First_Node_Id,
- Table_Initial => Alloc.Orig_Nodes_Initial,
- Table_Increment => Alloc.Orig_Nodes_Increment,
- Release_Threshold => Alloc.Orig_Nodes_Release_Threshold,
+ Table_Initial => Alloc.Nodes_Initial,
+ Table_Increment => Alloc.Nodes_Increment,
+ Release_Threshold => Alloc.Nodes_Release_Threshold,
Table_Name => "Orig_Nodes");
--------------------------
@@ -1579,11 +1579,15 @@ package body Atree is
procedure Lock is
begin
- Nodes.Release;
+ -- We used to Release the tables, as in the comments below, but that is
+ -- a waste of time. We're only wasting virtual memory here, and the
+ -- release calls copy large amounts of data.
+
+ -- Nodes.Release;
Nodes.Locked := True;
- Flags.Release;
+ -- Flags.Release;
Flags.Locked := True;
- Orig_Nodes.Release;
+ -- Orig_Nodes.Release;
Orig_Nodes.Locked := True;
end Lock;