| Index: src/compiler.cc
|
| diff --git a/src/compiler.cc b/src/compiler.cc
|
| index 895c31c63c41da3df4496ef73645f3b0ff3f9bf0..3da686aad11b6a5a6bf1ff3b571f1fce323beb39 100644
|
| --- a/src/compiler.cc
|
| +++ b/src/compiler.cc
|
| @@ -54,55 +54,50 @@ namespace internal {
|
|
|
|
|
| CompilationInfo::CompilationInfo(Handle<Script> script,
|
| - Zone* zone,
|
| - Zone* phase_zone)
|
| + Zone* zone)
|
| : flags_(LanguageModeField::encode(CLASSIC_MODE)),
|
| script_(script),
|
| osr_ast_id_(BailoutId::None()) {
|
| - Initialize(script->GetIsolate(), BASE, zone, phase_zone);
|
| + Initialize(script->GetIsolate(), BASE, zone);
|
| }
|
|
|
|
|
| CompilationInfo::CompilationInfo(Handle<SharedFunctionInfo> shared_info,
|
| - Zone* zone,
|
| - Zone* phase_zone)
|
| + Zone* zone)
|
| : flags_(LanguageModeField::encode(CLASSIC_MODE) | IsLazy::encode(true)),
|
| shared_info_(shared_info),
|
| script_(Handle<Script>(Script::cast(shared_info->script()))),
|
| osr_ast_id_(BailoutId::None()) {
|
| - Initialize(script_->GetIsolate(), BASE, zone, phase_zone);
|
| + Initialize(script_->GetIsolate(), BASE, zone);
|
| }
|
|
|
|
|
| CompilationInfo::CompilationInfo(Handle<JSFunction> closure,
|
| - Zone* zone,
|
| - Zone* phase_zone)
|
| + Zone* zone)
|
| : flags_(LanguageModeField::encode(CLASSIC_MODE) | IsLazy::encode(true)),
|
| closure_(closure),
|
| shared_info_(Handle<SharedFunctionInfo>(closure->shared())),
|
| script_(Handle<Script>(Script::cast(shared_info_->script()))),
|
| context_(closure->context()),
|
| osr_ast_id_(BailoutId::None()) {
|
| - Initialize(script_->GetIsolate(), BASE, zone, phase_zone);
|
| + Initialize(script_->GetIsolate(), BASE, zone);
|
| }
|
|
|
|
|
| CompilationInfo::CompilationInfo(HydrogenCodeStub* stub,
|
| Isolate* isolate,
|
| - Zone* zone,
|
| - Zone* phase_zone)
|
| + Zone* zone)
|
| : flags_(LanguageModeField::encode(CLASSIC_MODE) |
|
| IsLazy::encode(true)),
|
| osr_ast_id_(BailoutId::None()) {
|
| - Initialize(isolate, STUB, zone, phase_zone);
|
| + Initialize(isolate, STUB, zone);
|
| code_stub_ = stub;
|
| }
|
|
|
|
|
| void CompilationInfo::Initialize(Isolate* isolate,
|
| Mode mode,
|
| - Zone* zone,
|
| - Zone* phase_zone) {
|
| + Zone* zone) {
|
| isolate_ = isolate;
|
| function_ = NULL;
|
| scope_ = NULL;
|
| @@ -110,7 +105,6 @@ void CompilationInfo::Initialize(Isolate* isolate,
|
| extension_ = NULL;
|
| pre_parse_data_ = NULL;
|
| zone_ = zone;
|
| - phase_zone_ = phase_zone;
|
| deferred_handles_ = NULL;
|
| code_stub_ = NULL;
|
| prologue_offset_ = kPrologueOffsetNotSet;
|
| @@ -1228,12 +1222,10 @@ void Compiler::RecordFunctionCompilation(Logger::LogEventsAndTags tag,
|
| }
|
|
|
|
|
| -CompilationPhase::CompilationPhase(const char* name,
|
| - Isolate* isolate,
|
| - Zone* zone)
|
| - : name_(name), isolate_(isolate), zone_(zone) {
|
| +CompilationPhase::CompilationPhase(const char* name, CompilationInfo* info)
|
| + : name_(name), info_(info), zone_(info->isolate()) {
|
| if (FLAG_hydrogen_stats) {
|
| - start_allocation_size_ = zone->allocation_size();
|
| + info_zone_start_allocation_size_ = info->zone()->allocation_size();
|
| start_ticks_ = OS::Ticks();
|
| }
|
| }
|
| @@ -1241,9 +1233,10 @@ CompilationPhase::CompilationPhase(const char* name,
|
|
|
| CompilationPhase::~CompilationPhase() {
|
| if (FLAG_hydrogen_stats) {
|
| - unsigned size = zone()->allocation_size() - start_allocation_size_;
|
| + unsigned size = zone()->allocation_size();
|
| + size += info_->zone()->allocation_size() - info_zone_start_allocation_size_;
|
| int64_t ticks = OS::Ticks() - start_ticks_;
|
| - isolate_->GetHStatistics()->SaveTiming(name_, ticks, size);
|
| + isolate()->GetHStatistics()->SaveTiming(name_, ticks, size);
|
| }
|
| }
|
|
|
|
|