Index: src/crankshaft/x64/lithium-codegen-x64.cc |
diff --git a/src/crankshaft/x64/lithium-codegen-x64.cc b/src/crankshaft/x64/lithium-codegen-x64.cc |
index b0c10add4f3115cad40365ed4e172e95b6d4b21b..f5c28466b2a77f82528ddd85ac08d588a4573df4 100644 |
--- a/src/crankshaft/x64/lithium-codegen-x64.cc |
+++ b/src/crankshaft/x64/lithium-codegen-x64.cc |
@@ -181,14 +181,12 @@ void LCodeGen::DoPrologue(LPrologue* instr) { |
__ Push(info()->scope()->GetScopeInfo(info()->isolate())); |
__ CallRuntime(Runtime::kNewScriptContext); |
deopt_mode = Safepoint::kLazyDeopt; |
- } else if (slots <= FastNewFunctionContextStub::kMaximumSlots) { |
- FastNewFunctionContextStub stub(isolate(), slots); |
+ } else { |
+ FastNewFunctionContextStub stub(isolate()); |
+ __ Set(FastNewFunctionContextDescriptor::SlotsRegister(), slots); |
__ CallStub(&stub); |
// Result of FastNewFunctionContextStub is always in new space. |
need_write_barrier = false; |
- } else { |
- __ Push(rdi); |
- __ CallRuntime(Runtime::kNewFunctionContext); |
} |
RecordSafepoint(deopt_mode); |