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