| Index: src/hydrogen-instructions.cc
|
| diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc
|
| index 867fa50fca25aa30e5508edc5368d76b23c7a576..1613127e2febe7c80d0d99ceb9f4efac5bb821d8 100644
|
| --- a/src/hydrogen-instructions.cc
|
| +++ b/src/hydrogen-instructions.cc
|
| @@ -741,6 +741,10 @@ void HInstruction::InsertBefore(HInstruction* next) {
|
| next_ = next;
|
| previous_ = prev;
|
| SetBlock(next->block());
|
| + if (position() == RelocInfo::kNoPosition &&
|
| + next->position() != RelocInfo::kNoPosition) {
|
| + set_position(next->position());
|
| + }
|
| }
|
|
|
|
|
| @@ -775,6 +779,10 @@ void HInstruction::InsertAfter(HInstruction* previous) {
|
| if (block->last() == previous) {
|
| block->set_last(this);
|
| }
|
| + if (position() == RelocInfo::kNoPosition &&
|
| + previous->position() != RelocInfo::kNoPosition) {
|
| + set_position(previous->position());
|
| + }
|
| }
|
|
|
|
|
| @@ -1592,6 +1600,11 @@ Range* HConstant::InferRange(Zone* zone) {
|
| }
|
|
|
|
|
| +int HPhi::position() const {
|
| + return block()->first()->position();
|
| +}
|
| +
|
| +
|
| Range* HPhi::InferRange(Zone* zone) {
|
| Representation r = representation();
|
| if (r.IsSmiOrInteger32()) {
|
|
|