| Index: src/hydrogen.cc
|
| diff --git a/src/hydrogen.cc b/src/hydrogen.cc
|
| index 38676624c618eeb3fa19fb257c75d37c3191c186..d700fd2e34c65ee621f470242e64b00b789aa9b3 100644
|
| --- a/src/hydrogen.cc
|
| +++ b/src/hydrogen.cc
|
| @@ -33,6 +33,7 @@
|
| #include "hashmap.h"
|
| #include "lithium-allocator.h"
|
| #include "parser.h"
|
| +#include "scopeinfo.h"
|
| #include "scopes.h"
|
| #include "stub-cache.h"
|
|
|
| @@ -4430,6 +4431,13 @@ bool HGraphBuilder::TryInline(Call* expr) {
|
| TraceInline(target, caller, "could not generate deoptimization info");
|
| return false;
|
| }
|
| + if (target_shared->scope_info() == SerializedScopeInfo::Empty()) {
|
| + // The scope info might not have been set if a lazily compiled
|
| + // function is inlined before being called for the first time.
|
| + Handle<SerializedScopeInfo> target_scope_info =
|
| + SerializedScopeInfo::Create(target_info.scope());
|
| + target_shared->set_scope_info(*target_scope_info);
|
| + }
|
| target_shared->EnableDeoptimizationSupport(*target_info.code());
|
| Compiler::RecordFunctionCompilation(Logger::FUNCTION_TAG,
|
| &target_info,
|
|
|