Chromium Code Reviews| Index: src/compiler.cc |
| diff --git a/src/compiler.cc b/src/compiler.cc |
| index c6dfa045b744a82da959c177e090546488322398..13d99fecf661711c3e448831fbaead3ad831ade5 100644 |
| --- a/src/compiler.cc |
| +++ b/src/compiler.cc |
| @@ -91,6 +91,11 @@ CompilationInfo::CompilationInfo(Handle<JSFunction> closure, |
| } |
| +void CompilationInfo::CreateCodeObject() { |
|
Toon Verwaest
2013/12/18 16:11:41
That's a funny name. It doesn't actually create a
Jarin
2013/12/30 15:15:47
I am sorry, the whole CodeObject business is not n
|
| + closure_code_object_ = Handle<Object>(isolate()->heap()->undefined_value(), |
| + isolate()); |
|
Toon Verwaest
2013/12/18 16:11:41
isolate()->factory()->undefined_value() is already
|
| +} |
| + |
| CompilationInfo::CompilationInfo(HydrogenCodeStub* stub, |
| Isolate* isolate, |
| Zone* zone) |
| @@ -308,6 +313,9 @@ void RecompileJob::RecordOptimizationStats() { |
| // going, not necessarily that we optimized the code. |
| static bool MakeCrankshaftCode(CompilationInfo* info) { |
| RecompileJob job(info); |
| + |
| + info->CreateCodeObject(); |
| + |
| RecompileJob::Status status = job.CreateGraph(); |
| if (status != RecompileJob::SUCCEEDED) { |
| @@ -1075,6 +1083,7 @@ bool Compiler::RecompileConcurrent(Handle<JSFunction> closure, |
| } |
| SmartPointer<CompilationInfo> info(new CompilationInfoWithZone(closure)); |
| + |
| Handle<SharedFunctionInfo> shared = info->shared_info(); |
| if (compiling_for_osr) { |
| @@ -1110,6 +1119,7 @@ bool Compiler::RecompileConcurrent(Handle<JSFunction> closure, |
| info->SetLanguageMode(language_mode); |
| shared->set_language_mode(language_mode); |
| info->SaveHandles(); |
| + info->CreateCodeObject(); |
| if (Rewriter::Rewrite(info.get()) && Scope::Analyze(info.get())) { |
| RecompileJob* job = new(info->zone()) RecompileJob(info.get()); |