author | Dan Gohman <sunfish@mozilla.com> |
Mon, 23 Jun 2014 13:42:07 -0700 | |
changeset 190338 | bcd538f7e0195013ec7dca3b1a02db0a3ac53556 |
parent 190337 | a965be2731d43676863a57e994d66275f7d0a4fa |
child 190339 | 8051e8fec75fb274b8394c4114bcd9d59806c982 |
push id | 27004 |
push user | emorley@mozilla.com |
push date | Tue, 24 Jun 2014 15:52:34 +0000 |
treeherder | mozilla-central@7b174d47f3cc [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | bhackett |
bugs | 1027897 |
milestone | 33.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/js/src/jit/LiveRangeAllocator.cpp +++ b/js/src/jit/LiveRangeAllocator.cpp @@ -417,20 +417,21 @@ LiveInterval::firstIncompatibleUse(LAllo return usePos->pos; } return CodePosition::MAX; } LiveInterval * VirtualRegister::intervalFor(CodePosition pos) { + // Intervals are sorted in ascending order by their start position. for (LiveInterval **i = intervals_.begin(); i != intervals_.end(); i++) { if ((*i)->covers(pos)) return *i; - if (pos < (*i)->end()) + if (pos < (*i)->start()) break; } return nullptr; } LiveInterval * VirtualRegister::getFirstInterval() {