LLVM backend for 6502
Go to file
Evan Cheng df2f1189a3 Optimize conditional branch on i1 phis with non-constant inputs.
This turns:

eq:
        %3 = icmp eq i32 %1, %2
        br label %join

ne:
        %4 = icmp ne i32 %1, %2
        br label %join

join:
        %5 = phi i1 [%3, %eq], [%4, %ne]
        br i1 %5, label %yes, label %no

=>

eq:
        %3 = icmp eq i32 %1, %2
        br i1 %3, label %yes, label %no

ne:
        %4 = icmp ne i32 %1, %2
        br i1 %4, label %yes, label %no


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69102 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-14 23:40:03 +00:00
autoconf Link against libffi if available, fall back to "no external calls from 2009-04-13 04:26:06 +00:00
bindings Fix ocaml bindings; add "available_externally" linkage type. 2009-04-13 07:02:32 +00:00
cmake CMake: Added notes pointing to the LLVM CMake documentation. 2009-04-04 22:52:02 +00:00
docs Add a new "available_externally" linkage type. This is intended 2009-04-13 05:44:34 +00:00
examples Get rid of some compile warnings. 2009-04-13 19:45:05 +00:00
include Change SelectionDAG type legalization to allow BUILD_VECTOR operands to be 2009-04-13 22:05:19 +00:00
lib Optimize conditional branch on i1 phis with non-constant inputs. 2009-04-14 23:40:03 +00:00
projects Revert r67655 and r67656, as they are breaking the build. I'm 2009-03-25 00:52:11 +00:00
runtime Drop toy GC runtime. 2009-03-02 03:46:48 +00:00
test Optimize conditional branch on i1 phis with non-constant inputs. 2009-04-14 23:40:03 +00:00
tools Add a new "available_externally" linkage type. This is intended 2009-04-13 05:44:34 +00:00
unittests Fix pointer casting problem. 2009-04-09 03:10:03 +00:00
utils Rename COPY_TO_SUBCLASS to COPY_TO_REGCLASS, and generalize 2009-04-13 21:06:25 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Update hand-crafted VC++ build. 2009-02-02 19:22:02 +00:00
Xcode Remove Stacker.html from Xcode project. 2008-10-14 23:23:59 +00:00
build-for-llvm-top.sh Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
CMakeLists.txt CMake: Added notes pointing to the LLVM CMake documentation. 2009-04-04 22:52:02 +00:00
configure Regenerate. 2009-04-13 04:26:27 +00:00
CREDITS.TXT Test commit access to LLVM with some minor narcissism. 2009-04-03 21:41:52 +00:00
LICENSE.TXT Another great year for LLVM! 2009-02-26 15:17:13 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Remove ccc now. Radar 6737767 2009-04-07 20:29:25 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in Link against libffi if available, fall back to "no external calls from 2009-04-13 04:26:06 +00:00
Makefile.rules Don't install the libLLVMHello.dylib example. 2009-04-10 18:48:38 +00:00
ModuleInfo.txt Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
README.txt README.txt: test commit w/blank line appended 2009-03-23 21:00:45 +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.