Fix PR2748. Avoid coalescing physical register with virtual register which would...
authorEvan Cheng <evan.cheng@apple.com>
Thu, 11 Sep 2008 20:07:10 +0000 (20:07 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 11 Sep 2008 20:07:10 +0000 (20:07 +0000)
commit8db866808c803f9bdcd45c56a042fedd8cccd5bc
tree0616d920ec6af7dc1ea68c275f8065140b736e13
parentac34a00fe0784cd6efc466f03f93ab1017fa9726
Fix PR2748. Avoid coalescing physical register with virtual register which would create illegal extract_subreg. e.g.
vr1024 = extract_subreg vr1025, 1
...
vr1024 = mov8rr AH
If vr1024 is coalesced with AH, the extract_subreg is now illegal since AH does not have a super-reg whose sub-register 1 is AH.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56118 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SimpleRegisterCoalescing.cpp
lib/CodeGen/SimpleRegisterCoalescing.h
test/CodeGen/X86/2008-09-11-CoalescerBug2.ll [new file with mode: 0644]