LLVM backend for 6502
Go to file
Chris Lattner 91153686f0 canonicalize constants to the RHS of addc/adde. If nothing uses the carry out of
addc, turn it into add.

This allows us to compile:

long long test(long long A, unsigned B) {
  return (A + ((long long)B << 32)) & 123;
}

into:

_test:
        movl $123, %eax
        andl 4(%esp), %eax
        xorl %edx, %edx
        ret

instead of:
_test:
        xorl %edx, %edx
        movl %edx, %eax
        addl 4(%esp), %eax   ;; add of zero
        andl $123, %eax
        ret


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34909 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-04 20:03:15 +00:00
autoconf Add possibility to set memory limit for binaries run via libSystem. This 2007-02-16 19:11:07 +00:00
docs Get the version number for the LLVM from the autoconf/configure.ac file 2007-03-04 00:45:50 +00:00
examples eliminate vector-related ctors 2007-02-13 06:06:26 +00:00
include add iterator range version of ctor. 2007-03-04 04:04:43 +00:00
lib canonicalize constants to the RHS of addc/adde. If nothing uses the carry out of 2007-03-04 20:03:15 +00:00
projects avoid collision with /usr/bin/sample if this ever gets installed. 2007-02-18 03:03:41 +00:00
runtime crtend is only for llvm-gcc3, remove it. 2007-02-23 19:34:09 +00:00
test New testcases for PR1179/PR1232. 2007-03-04 00:54:06 +00:00
tools 1. Handle errors around the ModuleProvider. This is necessary since it is 2007-03-03 18:21:44 +00:00
utils rename some CCActions 2007-02-28 05:29:06 +00:00
win32 Unbreak VC++ build. 2007-01-15 20:27:18 +00:00
Xcode Update project 2007-01-29 18:45:08 +00:00
.cvsignore Add llvm.spec, a generated file. 2006-10-18 19:23:56 +00:00
configure Regenerate for getrlimit/setrlimit. 2007-02-16 19:17:20 +00:00
CREDITS.TXT Added myself 2007-02-27 10:44:42 +00:00
LICENSE.TXT remove these. 2007-02-25 02:28:21 +00:00
llvm.spec.in
Makefile revert r1.68. This breaks 'make install' without doing 'make' first, but 2007-02-21 06:23:20 +00:00
Makefile.common
Makefile.config.in For PR739: 2007-01-17 20:24:45 +00:00
Makefile.rules correct dependency 2007-02-28 05:10:40 +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.