LLVM backend for 6502
Go to file
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
autoconf - Added ExecutionEngine/MCJIT tests 2012-05-17 21:07:47 +00:00
bindings
cmake Fix how CMake appends -m32 to linker command-lines 2012-05-23 18:42:02 +00:00
docs revert my previous patches that introduced an additional parameter to the objectsize intrinsic. 2012-05-22 15:25:31 +00:00
examples
include revert r156383: removal of TYPE_CODE_FUNCTION_OLD 2012-05-23 15:19:39 +00:00
lib Correctly deal with identity copies in RegisterCoalescer. 2012-05-23 20:21:06 +00:00
projects Update all outdated autoconf files in the sample project. 2012-05-05 15:02:39 +00:00
runtime
test Correctly deal with identity copies in RegisterCoalescer. 2012-05-23 20:21:06 +00:00
tools Plug a leak when using MCJIT. 2012-05-20 17:24:08 +00:00
unittests fix the quotient returned by sdivrem() for the case when LHS is negative and RHS is positive 2012-05-22 01:09:48 +00:00
utils Fixed typo in r156905. 2012-05-23 12:34:56 +00:00
.gitignore Add tools/lld to .gitignore. 2012-05-02 21:25:32 +00:00
CMakeLists.txt Make it possible to switch off solution folders. VS Express does not support 2012-05-09 15:10:54 +00:00
configure - Added ExecutionEngine/MCJIT tests 2012-05-17 21:07:47 +00:00
CREDITS.TXT Update the documentation of CellSPU, in case it gets removed in 3.1. 2012-04-29 20:00:55 +00:00
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile Do not install llvm-config-host for cross-builds of clang. rdar://11317847 2012-05-09 00:07:02 +00:00
Makefile.common [docs] Remove unsupported references to ExtraSource variable. 2012-05-15 21:32:27 +00:00
Makefile.config.in - Added ExecutionEngine/MCJIT tests 2012-05-17 21:07:47 +00:00
Makefile.rules Make IntelJITEvents and OProfileJIT as optional libraries and add 2012-05-07 19:38:40 +00:00
README.txt test commit 2012-05-21 13:18:06 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.

If you're writing a package for LLVM, see docs/Packaging.html for our
suggestions.