LiveInterval: Fix computeFromMainRange() producing adjacent segments with same valno
authorMatthias Braun <matze@braunis.de>
Wed, 8 Apr 2015 01:41:10 +0000 (01:41 +0000)
committerMatthias Braun <matze@braunis.de>
Wed, 8 Apr 2015 01:41:10 +0000 (01:41 +0000)
commit1e61bbf0226ad0fa190d9497a2bb894c25c192c2
treee03d1b8ce90757dd5cb268121ce4dc03a599b564
parentd7e6f13671e4f36c038b1a671697196b7b72db27
LiveInterval: Fix computeFromMainRange() producing adjacent segments with same valno

If two livesegments from different subranges happened to have the same
definition they could possibly end up as two adjacent segments in the
main liverange with the same value number which is not allowed. Detect
such cases and fix them in the 2nd pass of computeFromMainRange() if
necessary.

No testcase as there is only an out-of-tree target where I can sensibly
come up with one.

llvm-svn: 234382
llvm/lib/CodeGen/LiveInterval.cpp