LLVM backend for 6502
Go to file
Jim Grosbach 3d6cb88a64 Start of revamping the register scavenging in PEI. ARM Thumb1 is the driving
interest for this, as it currently reserves a register rather than using
the scavenger for matierializing constants as needed.

Instead of scavenging registers on the fly while eliminating frame indices,
new virtual registers are created, and then a scavenged collectively in a
post-pass over the function. This isolates the bits that need to interact
with the scavenger, and sets the stage for more intelligent use, and reuse,
of scavenged registers.

For the time being, this is disabled by default. Once the bugs are worked out,
the current scavenging calls in replaceFrameIndices() will be removed and
the post-pass scavenging will be the default. Until then,
-enable-frame-index-scavenging enables the new code. Currently, only the
Thumb1 back end is set up to use it.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82734 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-24 23:52:18 +00:00
autoconf PR4047: Permit configure --enable-targets=host,cpp for example. "host" has the 2009-09-23 17:05:42 +00:00
bindings Expose initializing the native target for the execution engine. 2009-09-14 21:54:32 +00:00
cmake Update CMake. 2009-09-17 00:06:48 +00:00
docs add and document regex support for FileCheck. You can now do stuff like: 2009-09-24 21:47:32 +00:00
examples Auto-upgrade malloc instructions to malloc calls. 2009-09-24 17:47:49 +00:00
include add and document regex support for FileCheck. You can now do stuff like: 2009-09-24 21:47:32 +00:00
lib Start of revamping the register scavenging in PEI. ARM Thumb1 is the driving 2009-09-24 23:52:18 +00:00
projects install-sh chmods to 0755 by default, and this causes 'git diff' to show 2009-08-28 16:12:48 +00:00
runtime OptimalEdgeProfiling: Creation of profiles. 2009-09-01 19:03:44 +00:00
test Reenable sqrt IR generation test. 2009-09-24 23:37:40 +00:00
tools pretty mechanical changes to match coding guidelines (blessed by sabre on IRC) 2009-09-23 02:46:12 +00:00
unittests add and document regex support for FileCheck. You can now do stuff like: 2009-09-24 21:47:32 +00:00
utils add and document regex support for FileCheck. You can now do stuff like: 2009-09-24 21:47:32 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types. More to come. 2009-07-24 23:12:02 +00:00
Xcode Remove the IA-64 backend. 2009-07-24 00:30:09 +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 Add count/not tools as executables. 2009-09-24 06:23:57 +00:00
configure PR4047: Permit configure --enable-targets=host,cpp for example. "host" has the 2009-09-23 17:05:42 +00:00
CREDITS.TXT Add myself to the blame list. 2009-08-20 15:20:15 +00:00
LICENSE.TXT Add regular expression matching support, based on OpenBSD regexec()/regcomp() 2009-08-30 08:24:09 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Build (not test) the unittests as part of a normal build. 2009-09-13 22:39:27 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in Improve support for cross-hosted builds of LLVM. 2009-09-02 23:52:23 +00:00
Makefile.rules Add 'make check-all', which runs the LLVM tests along with the clang tests if 2009-09-20 06:17:21 +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.