mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-03 09:21:13 +00:00
Fix a bug where I didn't test for an empty range before inspecting the
back of it. I don't have anything even remotely close to a test case for this. It only broke two build bots, both of them doing bootstrap builds, one of them a dragonegg bootstrap. It doesn't break for me when I bootstrap either. It doesn't reproduce every time or on many machines during the bootstrap. Many thanks to Duncan Sands who got the exact command (and stage of the bootstrap) which failed on the dragonegg bootstrap and managed to get it to trigger under valgrind with debug symbols. The fix was then found by inspection. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159993 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
2dd83eb1ab
commit
1b8da1d8f1
@ -579,7 +579,8 @@ void LiveInterval::mergeIntervalRanges(const LiveInterval &RHS,
|
||||
|
||||
// And finally insert any trailing end of RHS (if we have one).
|
||||
for (; RI != RE; ++RI)
|
||||
if (ranges.back().valno == LHSValNo && RI->start <= ranges.back().end) {
|
||||
if (!ranges.empty() &&
|
||||
ranges.back().valno == LHSValNo && RI->start <= ranges.back().end) {
|
||||
ranges.back().end = std::max(ranges.back().end, RI->end);
|
||||
} else {
|
||||
ranges.push_back(*RI);
|
||||
|
Loading…
Reference in New Issue
Block a user