| Index: src/x64/lithium-x64.cc
|
| diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc
|
| index 5fc56462bb02dbdc6944c6c981f666d88484aa01..bf41a679b4ee9bd399543417c55a55faf96d416b 100644
|
| --- a/src/x64/lithium-x64.cc
|
| +++ b/src/x64/lithium-x64.cc
|
| @@ -1105,6 +1105,14 @@ LInstruction* LChunkBuilder::DoContext(HContext* instr) {
|
| }
|
|
|
|
|
| +LInstruction* LChunkBuilder::DoInlinedContext(HInlinedContext* instr) {
|
| + // All implicit uses of the context from rsi or the stack frame must be
|
| + // replaced with uses of HContext values before HInlinedContext will work.
|
| + UNREACHABLE();
|
| + return instr->HasNoUses() ? NULL : DefineAsRegister(new LInlinedContext);
|
| +}
|
| +
|
| +
|
| LInstruction* LChunkBuilder::DoOuterContext(HOuterContext* instr) {
|
| LOperand* context = UseRegisterAtStart(instr->value());
|
| return DefineAsRegister(new LOuterContext(context));
|
| @@ -2151,7 +2159,8 @@ LInstruction* LChunkBuilder::DoEnterInlined(HEnterInlined* instr) {
|
| HEnvironment* inner = outer->CopyForInlining(instr->closure(),
|
| instr->function(),
|
| undefined,
|
| - instr->call_kind());
|
| + instr->call_kind(),
|
| + instr->context_changed());
|
| current_block_->UpdateEnvironment(inner);
|
| chunk_->AddInlinedClosure(instr->closure());
|
| return NULL;
|
|
|