LLVM backend for 6502
Go to file
Jakob Stoklund Olesen 8bfe50871f Add the SpillPlacement analysis pass.
This pass precomputes CFG block frequency information that can be used by the
register allocator to find optimal spill code placement.

Given an interference pattern, placeSpills() will compute which basic blocks
should have the current variable enter or exit in a register, and which blocks
prefer the stack.

The algorithm is ready to consume block frequencies from profiling data, but for
now it gets by with the static estimates used for spill weights.

This is a work in progress and still not hooked up to RegAllocGreedy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122938 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-06 01:21:53 +00:00
autoconf autoconf: Add --disable-embed-stdcxx to suppress linking libstdc++.a into llvm.dll with --enable-shared on Cygming. 2010-12-29 03:59:14 +00:00
bindings Fix OCaml bindings crash, PR8847. 2010-12-23 15:49:26 +00:00
cmake TableGen.cmake: sometimes the .td file is not in the current directory 2011-01-03 20:01:32 +00:00
docs Stub out a new updating interface to AliasAnalysis, allowing stateful analyses to be informed when 2011-01-03 21:38:41 +00:00
examples Do not re-test for the existence of pthread.h. 2010-12-23 21:27:22 +00:00
include Add the SpillPlacement analysis pass. 2011-01-06 01:21:53 +00:00
lib Add the SpillPlacement analysis pass. 2011-01-06 01:21:53 +00:00
projects Regen configure 2010-12-12 21:42:01 +00:00
runtime
test Fix test to coincide with r122934 change from PR8919. 2011-01-06 01:09:35 +00:00
tools split dom frontier handling stuff out to its own DominanceFrontier header, 2011-01-02 22:09:33 +00:00
unittests UnitTests/Path: Fix typo, add error number, and enable the directory cleanup code. 2011-01-05 16:39:46 +00:00
utils Disable r122754 on Windows: was causing all lit tests to fail. 2011-01-04 10:23:42 +00:00
website
.gitignore Cleanup and document .gitignore. 2010-12-17 17:22:50 +00:00
build-for-llvm-top.sh
CMakeLists.txt New cmake option LLVM_APPEND_VC_REV for controlling when the VC 2010-12-20 09:47:13 +00:00
configure autoconf: Add --disable-embed-stdcxx to suppress linking libstdc++.a into llvm.dll with --enable-shared on Cygming. 2010-12-29 03:59:14 +00:00
CREDITS.TXT Another git svn dcommit test. This time let's hope it doesn't kill my repo. 2010-12-10 14:45:10 +00:00
LICENSE.TXT
llvm.spec.in
Makefile Merge System into Support. 2010-11-29 18:16:10 +00:00
Makefile.common
Makefile.config.in autoconf: Add --disable-embed-stdcxx to suppress linking libstdc++.a into llvm.dll with --enable-shared on Cygming. 2010-12-29 03:59:14 +00:00
Makefile.rules build: Shared libraries shouldn't used RPATH on Darwin, only main executables 2010-12-08 02:29:26 +00:00
ModuleInfo.txt Remove trailing space. This is just an excuse to poke the 2010-10-05 20:32:15 +00:00
README.txt Undoing test commit blank space. 2010-09-29 17:39:29 +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.