Index: src/global-handles.h |
=================================================================== |
--- src/global-handles.h (revision 3093) |
+++ src/global-handles.h (working copy) |
@@ -127,6 +127,7 @@ |
static void PrintStats(); |
static void Print(); |
#endif |
+ class Pool; |
private: |
// Internal node structure, one for each global handle. |
class Node; |
@@ -148,6 +149,23 @@ |
static Node* first_free_; |
static Node* first_free() { return first_free_; } |
static void set_first_free(Node* value) { first_free_ = value; } |
+ |
+ // List of deallocated nodes. |
+ // Deallocated nodes form a prefix of all the nodes and |
+ // |first_deallocated| points to last deallocated node before |
+ // |head|. Those deallocated nodes are additionally linked |
+ // ny |next_free|: |
Mads Ager (chromium)
2009/10/26 06:44:53
ny -> by
antonm
2009/10/26 11:53:35
Done.
|
+ // 1st deallocated head |
+ // | | |
+ // V V |
+ // node node ... node node |
+ // .next -> .next -> .next -> |
+ // <- .next_free <- .next_free <- .next_free |
+ static Node* first_deallocated_; |
+ static Node* first_deallocated() { return first_deallocated_; } |
+ static void set_first_deallocated(Node* value) { |
+ first_deallocated_ = value; |
+ } |
}; |