LLVM backend for 6502
Go to file
Bill Wendling fbf9ff4621 Implement a more intelligent way of spilling uses across an invoke boundary.
The old way of determine when and where to spill a value that was used inside of
a landing pad resulted in spilling that value everywhere and not just at the
invoke edge.

This algorithm determines which values are used within a landing pad. It then
spills those values before the invoke and reloads them before the uses. This
should prevent excessive spilling in many cases, e.g. inside of loops.
<rdar://problem/10609139>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152486 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-10 07:11:55 +00:00
autoconf configure: Don't require a perl interpreter to be present, LLVM's buildsystem doesn't depend on perl anymore. 2012-03-07 17:07:20 +00:00
bindings [llvm.py] Define enumerations from Core.h; add OpCode class 2012-03-10 05:50:56 +00:00
cmake Minimal changes for LLVM to compile under VS11. 2012-03-01 22:42:52 +00:00
docs Add column width. 2012-03-06 09:23:25 +00:00
examples Switch to a more idiomatic way of silencing unused variable warnings in 2012-02-20 00:02:49 +00:00
include Support reading GNU symbol versions in ELFObjectFile 2012-03-09 20:59:52 +00:00
lib Implement a more intelligent way of spilling uses across an invoke boundary. 2012-03-10 07:11:55 +00:00
projects configure: Don't require a perl interpreter to be present, LLVM's buildsystem doesn't depend on perl anymore. 2012-03-07 17:07:20 +00:00
runtime Fixing a warning in MSVC (this is also a test commit) 2012-02-05 19:43:39 +00:00
test Add the missing call to Error when a bad X86 scale expression is parsed. 2012-03-09 22:24:10 +00:00
tools Fix uses of the C99 PRI format macros not to conflict with C++11 UDLs. 2012-03-10 02:04:38 +00:00
unittests Add support to the hashing infrastructure for automatically hashing both 2012-03-07 09:32:32 +00:00
utils Fix the x86 disassembler to at least print the lock prefix if it is the first 2012-03-09 17:52:49 +00:00
.gitignore git: Add tools/lldb to the ignore list. 2011-11-10 22:55:50 +00:00
CMakeLists.txt add LLVM_VERSION_MAJOR and _MINOR defines 2012-02-13 18:48:10 +00:00
configure configure: Don't require a perl interpreter to be present, LLVM's buildsystem doesn't depend on perl anymore. 2012-03-07 17:07:20 +00:00
CREDITS.TXT Add myself to the credits file 2012-02-29 16:43:11 +00:00
LICENSE.TXT Happy new year 2012! 2012-01-01 08:16:56 +00:00
llvm.spec.in Tidy up. s/Low Level Virtual Machine/LLVM/. 2012-01-25 22:00:23 +00:00
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
Makefile Makefile: add missing files to FilesToConfig 2012-01-17 02:56:49 +00:00
Makefile.common
Makefile.config.in configure: Don't require a perl interpreter to be present, LLVM's buildsystem doesn't depend on perl anymore. 2012-03-07 17:07:20 +00:00
Makefile.rules build/Darwin: Make it easy to cause all tools to get codesigned (with make CODESIGN_TOOLS=1). 2012-03-06 19:07:38 +00:00
README.txt test commit 2012-02-07 08:18:05 +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.

If you're writing a package for LLVM, see docs/Packaging.html for our
suggestions.