| Index: src/hydrogen-escape-analysis.cc
|
| diff --git a/src/hydrogen-escape-analysis.cc b/src/hydrogen-escape-analysis.cc
|
| index 9f4ee6cbec0d59b938e2ac0d8ecce5346bd502b9..4eb2a13726a4dd5dd0bd84bfdfbaedfc1ba12a6d 100644
|
| --- a/src/hydrogen-escape-analysis.cc
|
| +++ b/src/hydrogen-escape-analysis.cc
|
| @@ -206,12 +206,16 @@ void HEscapeAnalysisPhase::AnalyzeDataFlow(HInstruction* allocate) {
|
| ASSERT(store->access().IsInobject());
|
| state = NewStateCopy(store->previous(), state);
|
| state->SetOperandAt(index, store->value());
|
| + if (store->has_transition()) {
|
| + state->SetOperandAt(0, store->transition());
|
| + }
|
| if (store->HasObservableSideEffects()) {
|
| state->ReuseSideEffectsFromStore(store);
|
| }
|
| store->DeleteAndReplaceWith(store->ActualValue());
|
| if (FLAG_trace_escape_analysis) {
|
| - PrintF("Replacing store #%d\n", instr->id());
|
| + PrintF("Replacing store #%d%s\n", instr->id(),
|
| + store->has_transition() ? " (with transition)" : "");
|
| }
|
| break;
|
| }
|
|
|