Revision: 12229
Author:   [email protected]
Date:     Mon Jul 30 06:07:29 2012
Log:      Make AlwaysAllocateScope imply DisallowAllocationFailure.

[email protected]
TEST=cctest/test-api,cctest/test-heap (--gc-interval=100)

Review URL: https://chromiumcodereview.appspot.com/10824082
http://code.google.com/p/v8/source/detail?r=12229

Modified:
 /branches/bleeding_edge/src/heap.h
 /branches/bleeding_edge/test/cctest/test-heap.cc

=======================================
--- /branches/bleeding_edge/src/heap.h  Mon Jul 30 03:32:54 2012
+++ /branches/bleeding_edge/src/heap.h  Mon Jul 30 06:07:29 2012
@@ -2149,10 +2149,28 @@
 };


+#ifdef DEBUG
+class DisallowAllocationFailure {
+ public:
+  inline DisallowAllocationFailure();
+  inline ~DisallowAllocationFailure();
+
+ private:
+  bool old_state_;
+};
+#endif
+
+
 class AlwaysAllocateScope {
  public:
   inline AlwaysAllocateScope();
   inline ~AlwaysAllocateScope();
+
+#ifdef DEBUG
+ private:
+  // Implicitly disable artificial allocation failures.
+  DisallowAllocationFailure disallow_allocation_failure_;
+#endif
 };


@@ -2397,18 +2415,6 @@
 };


-#ifdef DEBUG
-class DisallowAllocationFailure {
- public:
-  inline DisallowAllocationFailure();
-  inline ~DisallowAllocationFailure();
-
- private:
-  bool old_state_;
-};
-#endif
-
-
 // A helper class to document/test C++ scopes where we do not
 // expect a GC. Usage:
 //
=======================================
--- /branches/bleeding_edge/test/cctest/test-heap.cc Fri Jul 27 02:54:56 2012 +++ /branches/bleeding_edge/test/cctest/test-heap.cc Mon Jul 30 06:07:29 2012
@@ -1268,6 +1268,7 @@
   // that the scavenger does not undo the filling.
   v8::HandleScope scope;
   AlwaysAllocateScope always_allocate;
+  LinearAllocationScope allocate_linearly;
   intptr_t available = new_space->EffectiveCapacity() - new_space->Size();
   intptr_t number_of_fillers = (available / FixedArray::SizeFor(32)) - 1;
   for (intptr_t i = 0; i < number_of_fillers; i++) {

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to