Chromium Code Reviews| Index: src/ia32/lithium-ia32.cc |
| diff --git a/src/ia32/lithium-ia32.cc b/src/ia32/lithium-ia32.cc |
| index 2fdbb9858bb435feb98d78826ca45388d9076cc7..6cb912ae7abff3f4da5877368602ba8657ea34a6 100644 |
| --- a/src/ia32/lithium-ia32.cc |
| +++ b/src/ia32/lithium-ia32.cc |
| @@ -2616,19 +2616,7 @@ LInstruction* LChunkBuilder::DoIsConstructCallAndBranch( |
| LInstruction* LChunkBuilder::DoSimulate(HSimulate* instr) { |
| HEnvironment* env = current_block_->last_environment(); |
| - ASSERT(env != NULL); |
| - |
| - env->set_ast_id(instr->ast_id()); |
| - |
| - env->Drop(instr->pop_count()); |
| - for (int i = instr->values()->length() - 1; i >= 0; --i) { |
| - HValue* value = instr->values()->at(i); |
| - if (instr->HasAssignedIndexAt(i)) { |
| - env->Bind(instr->GetAssignedIndexAt(i), value); |
| - } else { |
| - env->Push(value); |
| - } |
| - } |
| + instr->ReplayEnvironment(env); |
|
titzer
2013/08/26 16:49:44
Inline the local too...make it a one liner!
Michael Starzinger
2013/08/26 17:29:46
Done (also for the DoCapturedObject function).
|
| // If there is an instruction pending deoptimization environment create a |
| // lazy bailout instruction to capture the environment. |