llvm-6502/lib
Jakob Stoklund Olesen e3b548219f Correctly deal with identity copies in RegisterCoalescer.
Now that the coalescer keeps live intervals and machine code in sync at
all times, it needs to deal with identity copies differently.

When merging two virtual registers, all identity copies are removed
right away. This means that other identity copies must come from
somewhere else, and they are going to have a value number.

Deal with such copies by merging the value numbers before erasing the
copy instruction. Otherwise, we leave dangling value numbers in the live
interval.

This fixes PR12927.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157340 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-23 20:21:06 +00:00
..
Analysis Add support for C++11 enum classes in llvm. 2012-05-23 00:09:20 +00:00
Archive
AsmParser
Bitcode revert r156383: removal of TYPE_CODE_FUNCTION_OLD 2012-05-23 15:19:39 +00:00
CodeGen Correctly deal with identity copies in RegisterCoalescer. 2012-05-23 20:21:06 +00:00
DebugInfo
ExecutionEngine Make it so that the MArch, MCPU, MAttrs passed to EngineBuilder are actually used. 2012-05-21 16:57:17 +00:00
Linker Supply a C interface to the "LinkModules" method. 2012-05-09 08:55:40 +00:00
MC Refactor data-in-code annotations. 2012-05-18 19:12:01 +00:00
Object Refactor data-in-code annotations. 2012-05-18 19:12:01 +00:00
Support fix corner case in ConstantRange::intersectWith(). 2012-05-18 00:14:36 +00:00
TableGen Emit memcmp directly from the StringMatcherEmitter. 2012-05-20 18:10:42 +00:00
Target [arm-fast-isel] Add support for non-global callee. 2012-05-23 18:38:57 +00:00
Transforms BoundsChecking: add a couple of simple tests and fix a bug in branch emition 2012-05-23 16:24:52 +00:00
VMCore Fixed typo in r156905. 2012-05-23 12:34:56 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile