Index: src/compiler.cc |
diff --git a/src/compiler.cc b/src/compiler.cc |
index e8094ed1f3e35f43f4102d01a3a4b3a23180f92c..d44718bc0fc7faed24c8ee8cfb4f7bfcfaac1322 100644 |
--- a/src/compiler.cc |
+++ b/src/compiler.cc |
@@ -294,8 +294,9 @@ static bool MakeCrankshaftCode(CompilationInfo* info) { |
} |
Handle<Context> global_context(info->closure()->context()->global_context()); |
- TypeFeedbackOracle oracle(code, global_context, info->isolate()); |
- HGraphBuilder builder(info, &oracle); |
+ TypeFeedbackOracle oracle(code, global_context, info->isolate(), |
+ info->isolate()->zone()); |
+ HGraphBuilder builder(info, &oracle, info->isolate()->zone()); |
HPhase phase(HPhase::kTotal); |
HGraph* graph = builder.CreateGraph(); |
if (info->isolate()->has_pending_exception()) { |
@@ -346,7 +347,8 @@ bool Compiler::MakeCodeForLiveEdit(CompilationInfo* info) { |
// the compilation info is set if compilation succeeded. |
bool succeeded = MakeCode(info); |
if (!info->shared_info().is_null()) { |
- Handle<ScopeInfo> scope_info = ScopeInfo::Create(info->scope()); |
+ Handle<ScopeInfo> scope_info = ScopeInfo::Create(info->scope(), |
+ info->isolate()->zone()); |
info->shared_info()->set_scope_info(*scope_info); |
} |
return succeeded; |
@@ -420,7 +422,7 @@ static Handle<SharedFunctionInfo> MakeFunctionInfo(CompilationInfo* info) { |
lit->name(), |
lit->materialized_literal_count(), |
info->code(), |
- ScopeInfo::Create(info->scope())); |
+ ScopeInfo::Create(info->scope(), info->isolate()->zone())); |
ASSERT_EQ(RelocInfo::kNoPosition, lit->function_token_position()); |
Compiler::SetFunctionInfo(result, lit, true, script); |
@@ -462,7 +464,7 @@ static Handle<SharedFunctionInfo> MakeFunctionInfo(CompilationInfo* info) { |
script, Debugger::NO_AFTER_COMPILE_FLAGS); |
#endif |
- live_edit_tracker.RecordFunctionInfo(result, lit); |
+ live_edit_tracker.RecordFunctionInfo(result, lit, isolate->zone()); |
return result; |
} |
@@ -651,7 +653,8 @@ bool Compiler::CompileLazy(CompilationInfo* info) { |
// info initialization is important since set_scope_info might |
// trigger a GC, causing the ASSERT below to be invalid if the code |
// was flushed. By setting the code object last we avoid this. |
- Handle<ScopeInfo> scope_info = ScopeInfo::Create(info->scope()); |
+ Handle<ScopeInfo> scope_info = |
+ ScopeInfo::Create(info->scope(), info->isolate()->zone()); |
shared->set_scope_info(*scope_info); |
shared->set_code(*code); |
if (!function.is_null()) { |
@@ -728,7 +731,7 @@ Handle<SharedFunctionInfo> Compiler::BuildFunctionInfo(FunctionLiteral* literal, |
} else if ((V8::UseCrankshaft() && MakeCrankshaftCode(&info)) || |
(!V8::UseCrankshaft() && FullCodeGenerator::MakeCode(&info))) { |
ASSERT(!info.code().is_null()); |
- scope_info = ScopeInfo::Create(info.scope()); |
+ scope_info = ScopeInfo::Create(info.scope(), info.isolate()->zone()); |
} else { |
return Handle<SharedFunctionInfo>::null(); |
} |
@@ -747,7 +750,7 @@ Handle<SharedFunctionInfo> Compiler::BuildFunctionInfo(FunctionLiteral* literal, |
// the resulting function. |
SetExpectedNofPropertiesFromEstimate(result, |
literal->expected_property_count()); |
- live_edit_tracker.RecordFunctionInfo(result, literal); |
+ live_edit_tracker.RecordFunctionInfo(result, literal, info.isolate()->zone()); |
return result; |
} |