| Index: src/ia32/lithium-codegen-ia32.cc
|
| diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc
|
| index eb31d5aeeb339890dc7eb03f6f7b1f822d703720..59f6bab9a2e0b1f36f60cc2d500fa17830bbcf6e 100644
|
| --- a/src/ia32/lithium-codegen-ia32.cc
|
| +++ b/src/ia32/lithium-codegen-ia32.cc
|
| @@ -339,7 +339,9 @@ void LCodeGen::WriteTranslation(LEnvironment* environment,
|
| int height = translation_size - environment->parameter_count();
|
|
|
| WriteTranslation(environment->outer(), translation);
|
| - int closure_id = DefineDeoptimizationLiteral(environment->closure());
|
| + int closure_id = *info()->closure() != *environment->closure()
|
| + ? DefineDeoptimizationLiteral(environment->closure())
|
| + : Translation::kSelfLiteralId;
|
| translation->BeginFrame(environment->ast_id(), closure_id, height);
|
| for (int i = 0; i < translation_size; ++i) {
|
| LOperand* value = environment->values()->at(i);
|
|
|