| Index: src/hydrogen-load-elimination.cc
|
| diff --git a/src/hydrogen-load-elimination.cc b/src/hydrogen-load-elimination.cc
|
| index f2e993b18dea2305884acd01274f85edab887260..ca322ebc76e89729c12571c791bfad395d6f614b 100644
|
| --- a/src/hydrogen-load-elimination.cc
|
| +++ b/src/hydrogen-load-elimination.cc
|
| @@ -176,6 +176,10 @@ class HLoadEliminationTable : public ZoneObject {
|
| approx = approx->next_;
|
| }
|
| }
|
| + if (FLAG_trace_load_elimination) {
|
| + TRACE((" merge-to B%d\n", succ->block_id()));
|
| + Print();
|
| + }
|
| return this;
|
| }
|
|
|
| @@ -208,6 +212,11 @@ class HLoadEliminationTable : public ZoneObject {
|
| // the stored values are the same), return NULL indicating that this store
|
| // instruction is redundant. Otherwise, return {instr}.
|
| HValue* store(HStoreNamedField* instr) {
|
| + if (instr->store_mode() == PREINITIALIZING_STORE) {
|
| + TRACE((" skipping preinitializing store\n"));
|
| + return instr;
|
| + }
|
| +
|
| int field = FieldOf(instr->access());
|
| if (field < 0) return KillIfMisaligned(instr);
|
|
|
|
|