LLVM backend for 6502
Go to file
Chris Lattner 2926869b4a Fix a long-standing wart in the code generator: two-address instruction lowering
actually *removes* one of the operands, instead of just assigning both operands
the same register.  This make reasoning about instructions unnecessarily complex,
because you need to know if you are before or after register allocation to match
up operand #'s with the target description file.

Changing this also gets rid of a bunch of hacky code in various places.

This patch also includes changes to fold loads into cmp/test instructions in
the X86 backend, along with a significant simplification to the X86 spill
folding code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30108 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-05 02:12:02 +00:00
autoconf For PR738: 2006-08-24 22:41:20 +00:00
docs First draft of the "Live Interval Analysis" section. This is the "Live 2006-09-04 23:35:52 +00:00
examples Use llvm-config to determine what to link in 2006-09-04 06:04:03 +00:00
include/llvm ADd getImm/setImm methods 2006-09-04 23:35:22 +00:00
lib Fix a long-standing wart in the code generator: two-address instruction lowering 2006-09-05 02:12:02 +00:00
projects Fix a race condition in the makefile that broke grawp's tester last night. 2006-08-25 17:15:23 +00:00
runtime Describe and date modifications we made per LGPL requirements. 2006-08-08 14:47:54 +00:00
test add support for returning 64bit values 2006-09-04 19:05:01 +00:00
tools lli uses LinkAllCodegenComponents, so it needs this. Thanks to 2006-09-04 18:34:16 +00:00
utils Fix a long-standing wart in the code generator: two-address instruction lowering 2006-09-05 02:12:02 +00:00
win32 Keep Visual Studio happy. 2006-05-03 00:28:50 +00:00
Xcode Bring Xcode project up to date. 2006-08-25 14:16:49 +00:00
.cvsignore
configure For PR738: 2006-08-24 22:41:20 +00:00
CREDITS.TXT The list is sorted by name. 2006-08-29 01:42:47 +00:00
LICENSE.TXT
llvm.spec.in Minor technical correction in documentation. 2006-08-21 01:58:57 +00:00
Makefile Document build order dependencies. Make sure that llvm-config is built before 2006-09-04 04:27:07 +00:00
Makefile.common
Makefile.config.in Make the name of the project consistent with that specified in the 2006-08-07 23:23:39 +00:00
Makefile.rules Fix a build problem 2006-09-04 06:39:52 +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.