LLVM backend for 6502
Go to file
Dan Gohman 63f97201dc Fun x86 encoding tricks: when adding an immediate value of 128,
use a SUB instruction instead of an ADD, because -128 can be
encoded in an 8-bit signed immediate field, while +128 can't be.
This avoids the need for a 32-bit immediate field in this case.

A similar optimization applies to 64-bit adds with 0x80000000,
with the 32-bit signed immediate field.

To support this, teach tablegen how to handle 64-bit constants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57663 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-17 01:33:43 +00:00
autoconf Fix configure issue where configure 2008-10-07 22:21:03 +00:00
bindings PR2731: C and Ocaml bindings for setTailCall and isTailCall. 2008-08-30 16:34:54 +00:00
cmake CMake: Builds all targets. 2008-09-26 04:40:32 +00:00
docs Remove naming Tilmann for generics. 2008-10-15 20:25:04 +00:00
examples CMake: Builds all examples. Corrected name of CBackend target. 2008-09-26 19:48:03 +00:00
include Trim #includes. 2008-10-16 20:18:31 +00:00
lib Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
projects Add "sample" documentation to sample project. 2008-09-15 05:31:29 +00:00
runtime Fixing the stack walker. 2008-01-24 05:16:36 +00:00
test Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
tools Re-apply Makefile changes. Fix build with srcdir != objdir. 2008-10-16 14:02:29 +00:00
utils Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 update win32 project file, patch provided by OvermindDL1 on llvmdev. 2008-10-11 22:14:59 +00:00
Xcode Remove Stacker.html from Xcode project. 2008-10-14 23:23:59 +00:00
build-for-llvm-top.sh Allow the configure options to be set according to the llvm-top options. 2007-08-31 19:53:42 +00:00
CMakeLists.txt Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
configure Fix configure issue where configure 2008-10-07 22:21:03 +00:00
CREDITS.TXT Add another description to my entry. 2008-08-28 23:16:37 +00:00
LICENSE.TXT llvmc doesn't exist anymore, and llvmc2 doesn't have a special license file. 2008-06-20 20:05:57 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Add support for Canadian Cross builds where the host executables are not 2008-10-02 22:56:44 +00:00
Makefile.common remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
Makefile.config.in Add support for Canadian Cross builds where the host executables are not 2008-10-02 22:56:44 +00:00
Makefile.rules Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
ModuleInfo.txt Update to include clean and install commands. 2007-07-20 20:54:41 +00:00
README.txt Remove extra lines 2008-07-28 20:50:25 +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.