Do not share a single unknown val# for all the live ranges merged into a physical...
authorEvan Cheng <evan.cheng@apple.com>
Sat, 25 Apr 2009 09:25:19 +0000 (09:25 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Sat, 25 Apr 2009 09:25:19 +0000 (09:25 +0000)
commit0adb527d169e1f557676fda35bc9abb735e5c912
tree4b7ce576a63ecc54b81839020dc536924f21ec4a
parent9f805c206ee85d6730c809b6fec1fd5989bd9b04
Do not share a single unknown val# for all the live ranges merged into a physical sub-register live interval. When coalescer is merging in clobbered virtaul register live interval into a physical register live interval, give each virtual register val# a separate val# in the physical register live interval. Otherwise, the coalescer would have lost track of the definitions   information it needs to make correct coalescing decisions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70026 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/LiveInterval.h
lib/CodeGen/LiveInterval.cpp
test/CodeGen/X86/2009-04-25-CoalescerBug.ll [new file with mode: 0644]