diff options
author | Ryan <ry@tinyclouds.org> | 2009-08-21 13:13:04 +0200 |
---|---|---|
committer | Ryan <ry@tinyclouds.org> | 2009-08-21 13:13:04 +0200 |
commit | 048a1b8b9e5184f959ce924e76c61f8cd9e91089 (patch) | |
tree | 564bc754e09e25209b5ab28aa0b6880f23feb0eb /deps/v8/src/heap.h | |
parent | 90ac9ab078926fb11a3b1ce5f155caec230e0250 (diff) | |
download | node-new-048a1b8b9e5184f959ce924e76c61f8cd9e91089.tar.gz |
Upgrade v8 to 1.3.6
Diffstat (limited to 'deps/v8/src/heap.h')
-rw-r--r-- | deps/v8/src/heap.h | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/deps/v8/src/heap.h b/deps/v8/src/heap.h index ec1e21af5b..ac6f5be511 100644 --- a/deps/v8/src/heap.h +++ b/deps/v8/src/heap.h @@ -111,6 +111,7 @@ namespace internal { V(Object, nan_value, NanValue) \ V(Object, undefined_value, UndefinedValue) \ V(Object, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \ + V(Object, termination_exception, TerminationException) \ V(Object, minus_zero_value, MinusZeroValue) \ V(Object, null_value, NullValue) \ V(Object, true_value, TrueValue) \ @@ -626,8 +627,9 @@ class Heap : public AllStatic { // Returns whether required_space bytes are available after the collection. static bool CollectGarbage(int required_space, AllocationSpace space); - // Performs a full garbage collection. - static void CollectAllGarbage(); + // Performs a full garbage collection. Force compaction if the + // parameter is true. + static void CollectAllGarbage(bool force_compaction = false); // Performs a full garbage collection if a context has been disposed // since the last time the check was performed. @@ -1386,6 +1388,20 @@ class AssertNoAllocation { bool old_state_; }; +class DisableAssertNoAllocation { + public: + DisableAssertNoAllocation() { + old_state_ = Heap::allow_allocation(true); + } + + ~DisableAssertNoAllocation() { + Heap::allow_allocation(old_state_); + } + + private: + bool old_state_; +}; + #else // ndef DEBUG class AssertNoAllocation { @@ -1394,6 +1410,12 @@ class AssertNoAllocation { ~AssertNoAllocation() { } }; +class DisableAssertNoAllocation { + public: + DisableAssertNoAllocation() { } + ~DisableAssertNoAllocation() { } +}; + #endif #ifdef ENABLE_LOGGING_AND_PROFILING |