Revision: 11765
Author:   [email protected]
Date:     Mon Jun 11 09:47:08 2012
Log:      AssemblerBase does not need remember a Zone.  Fix this.

BUG=
TEST=

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

Modified:
 /branches/bleeding_edge/src/arm/assembler-arm.cc
 /branches/bleeding_edge/src/assembler.cc
 /branches/bleeding_edge/src/assembler.h
 /branches/bleeding_edge/src/ia32/assembler-ia32.cc
 /branches/bleeding_edge/src/safepoint-table.cc
 /branches/bleeding_edge/src/x64/assembler-x64.cc

=======================================
--- /branches/bleeding_edge/src/arm/assembler-arm.cc Mon Jun 11 05:42:31 2012 +++ /branches/bleeding_edge/src/arm/assembler-arm.cc Mon Jun 11 09:47:08 2012
@@ -291,7 +291,7 @@


 Assembler::Assembler(Isolate* arg_isolate, void* buffer, int buffer_size)
-    : AssemblerBase(arg_isolate, arg_isolate->zone()),
+    : AssemblerBase(arg_isolate),
       positions_recorder_(this),
       emit_debug_code_(FLAG_debug_code) {
   if (buffer == NULL) {
=======================================
--- /branches/bleeding_edge/src/assembler.cc    Mon Jun 11 06:18:05 2012
+++ /branches/bleeding_edge/src/assembler.cc    Mon Jun 11 09:47:08 2012
@@ -106,10 +106,9 @@
// -----------------------------------------------------------------------------
 // Implementation of AssemblerBase

-AssemblerBase::AssemblerBase(Isolate* isolate, Zone* zone)
+AssemblerBase::AssemblerBase(Isolate* isolate)
     : isolate_(isolate),
-      jit_cookie_(0),
-      zone_(zone) {
+      jit_cookie_(0) {
   if (FLAG_mask_constants_with_cookie && isolate != NULL)  {
     jit_cookie_ = V8::RandomPrivate(isolate);
   }
=======================================
--- /branches/bleeding_edge/src/assembler.h     Mon Jun 11 06:18:05 2012
+++ /branches/bleeding_edge/src/assembler.h     Mon Jun 11 09:47:08 2012
@@ -57,7 +57,7 @@

 class AssemblerBase: public Malloced {
  public:
-  AssemblerBase(Isolate* isolate, Zone* zone);
+  explicit AssemblerBase(Isolate* isolate);

   Isolate* isolate() const { return isolate_; }
   int jit_cookie() { return jit_cookie_; }
@@ -65,13 +65,10 @@
   // Overwrite a host NaN with a quiet target NaN.  Used by mksnapshot for
   // cross-snapshotting.
   static void QuietNaN(HeapObject* nan) { }
-
-  Zone* zone() const { return zone_; }

  private:
   Isolate* isolate_;
   int jit_cookie_;
-  Zone* zone_;
 };


=======================================
--- /branches/bleeding_edge/src/ia32/assembler-ia32.cc Mon Jun 11 05:42:31 2012 +++ /branches/bleeding_edge/src/ia32/assembler-ia32.cc Mon Jun 11 09:47:08 2012
@@ -313,7 +313,7 @@
 #endif

 Assembler::Assembler(Isolate* arg_isolate, void* buffer, int buffer_size)
-    : AssemblerBase(arg_isolate, arg_isolate->zone()),
+    : AssemblerBase(arg_isolate),
       positions_recorder_(this),
       emit_debug_code_(FLAG_debug_code) {
   if (buffer == NULL) {
=======================================
--- /branches/bleeding_edge/src/safepoint-table.cc      Mon Jun 11 05:42:31 2012
+++ /branches/bleeding_edge/src/safepoint-table.cc      Mon Jun 11 09:47:08 2012
@@ -128,20 +128,19 @@
     Safepoint::DeoptMode deopt_mode) {
   ASSERT(arguments >= 0);
   DeoptimizationInfo info;
-  Zone* zone = assembler->zone();
   info.pc = assembler->pc_offset();
   info.arguments = arguments;
   info.has_doubles = (kind & Safepoint::kWithDoubles);
-  deoptimization_info_.Add(info, zone);
-  deopt_index_list_.Add(Safepoint::kNoDeoptimizationIndex, zone);
+  deoptimization_info_.Add(info, zone_);
+  deopt_index_list_.Add(Safepoint::kNoDeoptimizationIndex, zone_);
   if (deopt_mode == Safepoint::kNoLazyDeopt) {
     last_lazy_safepoint_ = deopt_index_list_.length();
   }
-  indexes_.Add(new(zone) ZoneList<int>(8, zone), zone);
+  indexes_.Add(new(zone_) ZoneList<int>(8, zone_), zone_);
   registers_.Add((kind & Safepoint::kWithRegisters)
-      ? new(zone) ZoneList<int>(4, zone)
+      ? new(zone_) ZoneList<int>(4, zone_)
       : NULL,
-      zone);
+      zone_);
   return Safepoint(indexes_.last(), registers_.last());
 }

@@ -162,7 +161,6 @@
// For lazy deoptimization we need space to patch a call after every call.
   // Ensure there is always space for such patching, even if the code ends
   // in a call.
-  Zone* zone = assembler->zone();
   int target_offset = assembler->pc_offset() + Deoptimizer::patch_size();
   while (assembler->pc_offset() < target_offset) {
     assembler->nop();
@@ -193,12 +191,12 @@
   }

   // Emit table of bitmaps.
-  ZoneList<uint8_t> bits(bytes_per_entry, zone);
+  ZoneList<uint8_t> bits(bytes_per_entry, zone_);
   for (int i = 0; i < length; i++) {
     ZoneList<int>* indexes = indexes_[i];
     ZoneList<int>* registers = registers_[i];
     bits.Clear();
-    bits.AddBlock(0, bytes_per_entry, zone);
+    bits.AddBlock(0, bytes_per_entry, zone_);

     // Run through the registers (if any).
     ASSERT(IsAligned(kNumSafepointRegisters, kBitsPerByte));
=======================================
--- /branches/bleeding_edge/src/x64/assembler-x64.cc Mon Jun 11 05:42:31 2012 +++ /branches/bleeding_edge/src/x64/assembler-x64.cc Mon Jun 11 09:47:08 2012
@@ -345,7 +345,7 @@
 #endif

 Assembler::Assembler(Isolate* arg_isolate, void* buffer, int buffer_size)
-    : AssemblerBase(arg_isolate, arg_isolate->zone()),
+    : AssemblerBase(arg_isolate),
       code_targets_(100),
       positions_recorder_(this),
       emit_debug_code_(FLAG_debug_code) {

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

Reply via email to