| Index: src/compiler.cc
|
| diff --git a/src/compiler.cc b/src/compiler.cc
|
| index f392cceb3cd593283663f46a9454a9d004a7e675..367de6488164bfb623c56be11a6a0f1b2ba0d534 100755
|
| --- a/src/compiler.cc
|
| +++ b/src/compiler.cc
|
| @@ -221,11 +221,12 @@ static bool MakeCrankshaftCode(CompilationInfo* info) {
|
| // or perform on-stack replacement for function with too many
|
| // stack-allocated local variables.
|
| //
|
| - // The encoding is as a signed value, with parameters using the negative
|
| - // indices and locals the non-negative ones.
|
| + // The encoding is as a signed value, with parameters and receiver using
|
| + // the negative indices and locals the non-negative ones.
|
| const int limit = LUnallocated::kMaxFixedIndices / 2;
|
| Scope* scope = info->scope();
|
| - if (scope->num_parameters() > limit || scope->num_stack_slots() > limit) {
|
| + if ((scope->num_parameters() + 1) > limit ||
|
| + scope->num_stack_slots() > limit) {
|
| AbortAndDisable(info);
|
| // True indicates the compilation pipeline is still going, not
|
| // necessarily that we optimized the code.
|
|
|