LLVM backend for 6502
Go to file
Nate Begeman 5a01481585 Make FP_TO_UINT Illegal. This allows us to generate significantly better
codegen for FP_TO_UINT by using the legalizer's SELECT variant.

Implement a codegen improvement for SELECT_CC, selecting the false node in
the MBB that feeds the phi node.  This allows us to codegen:
void foo(int *a, int b, int c) { int d = (a < b) ? 5 : 9; *a = d; }
as:
_foo:
        li r2, 5
        cmpw cr0, r4, r3
        bgt .LBB_foo_2  ; entry
.LBB_foo_1:     ; entry
        li r2, 9
.LBB_foo_2:     ; entry
        stw r2, 0(r3)
        blr

insted of:
_foo:
        li r2, 5
        li r5, 9
        cmpw cr0, r4, r3
        bgt .LBB_foo_2  ; entry
.LBB_foo_1:     ; entry
        or r2, r5, r5
.LBB_foo_2:     ; entry
        stw r2, 0(r3)
        blr


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22784 91177308-0d34-0410-b5e6-96231b3b80d8
2005-08-14 01:17:16 +00:00
autoconf Fix PR608: 2005-07-27 21:58:38 +00:00
docs Update a doc, patch contributed by Jim Laskey! 2005-08-02 19:14:25 +00:00
examples Eliminate all remaining tabs and trailing spaces. 2005-07-27 06:12:32 +00:00
include/llvm Remove an unncessary argument to SimplifySelectCC and add an additional 2005-08-13 06:14:17 +00:00
lib Make FP_TO_UINT Illegal. This allows us to generate significantly better 2005-08-14 01:17:16 +00:00
projects oops 2005-07-05 16:36:18 +00:00
runtime
test Added test cases to guarantee use of ORC and ANDC. 2005-08-12 23:40:14 +00:00
tools If the user interrupts bugpoint, don't extract loops 2005-08-02 23:25:56 +00:00
utils make is the standard name, not gmake 2005-08-02 00:10:52 +00:00
win32 Fix VC++ build problems. 2005-07-30 18:22:27 +00:00
Xcode First rev of Xcode 2.1 project 2005-08-11 22:19:26 +00:00
.cvsignore Ignore the configure.out file generated by "make reconfigure" 2005-06-18 23:01:25 +00:00
configure Fix PR608: 2005-07-27 21:58:38 +00:00
CREDITS.TXT Add a note, people are responsible for requesting that they be added to the 2005-08-02 22:10:21 +00:00
LICENSE.TXT Remove extraneous colons after program names for consistency 2005-05-12 21:39:01 +00:00
llvm.spec Onward to LLVM-1.6 and beyond! 2005-05-18 20:23:20 +00:00
llvm.spec.in Onward to LLVM-1.6 and beyond! 2005-05-18 20:23:20 +00:00
Makefile Make sure the tools get built if no build target is specified. 2005-05-29 00:49:24 +00:00
Makefile.common
Makefile.config.in
Makefile.rules Fix oversized GOT problem with gcc-4 on alpha 2005-08-13 05:09:50 +00:00
README.txt

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.