Chromium Code Reviews| Index: src/ia32/full-codegen-ia32.cc |
| diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc |
| index 253387f42d5346e1a14cf49f040401486af88c39..1250e6b0dd4bd384887fcd7db8504c6d3bd21477 100644 |
| --- a/src/ia32/full-codegen-ia32.cc |
| +++ b/src/ia32/full-codegen-ia32.cc |
| @@ -2158,8 +2158,13 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(ResolveEvalFlag flag, |
| // Push the receiver of the enclosing function. |
| __ push(Operand(ebp, (2 + info_->scope()->num_parameters()) * kPointerSize)); |
| - // Push the strict mode flag. |
| - __ push(Immediate(Smi::FromInt(strict_mode_flag()))); |
| + // Push the strict mode flag. In harmony mode every eval call |
| + // is a strict mode eval call. |
|
Lasse Reichstein
2011/09/01 07:34:04
How come this invariant isn't shown in the strict_
Steven
2011/09/01 15:01:33
In fact, harmony mode should be an extension of th
|
| + StrictModeFlag strict_mode = strict_mode_flag(); |
| + if (FLAG_harmony_block_scoping) { |
| + strict_mode = kStrictMode; |
| + } |
| + __ push(Immediate(Smi::FromInt(strict_mode))); |
| __ CallRuntime(flag == SKIP_CONTEXT_LOOKUP |
| ? Runtime::kResolvePossiblyDirectEvalNoLookup |