LLVM backend for 6502
Go to file
Jakob Stoklund Olesen 87972fa63f Add RAGreedy::calcCompactRegion.
This method computes the edge bundles that should be live when splitting
around a compact region. This is independent of interference.

The function returns false if the live range was already a compact
region, or the compact region doesn't have any live bundles - it would
be the same as splitting around basic blocks.

Compact regions are computed using the normal spill placement code. We
pretend there is interference in all live-through blocks that don't use
the live range. This removes all edges from the Hopfield network used
for spill placement, so it converges instantly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135847 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-23 03:41:57 +00:00
autoconf Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo, 2011-07-22 21:58:54 +00:00
bindings Update OCaml bindings. Opaque types are gone, type holders are gone and the 2011-07-09 18:29:33 +00:00
cmake Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo, 2011-07-22 21:58:54 +00:00
docs add section to ToC 2011-07-22 21:36:29 +00:00
examples Convert ConstantExpr::getGetElementPtr and 2011-07-21 14:31:17 +00:00
include Fix a silly off by one. 2011-07-23 03:04:46 +00:00
lib Add RAGreedy::calcCompactRegion. 2011-07-23 03:41:57 +00:00
projects Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
runtime Build and install the archive when building the Apple way. 2011-07-19 23:33:42 +00:00
test Move the last uses of RetainFunc etc. over to using getRetainCallee() etc. 2011-07-22 22:29:21 +00:00
tools Move TargetAsmParser.h TargetAsmBackend.h and TargetAsmLexer.h to MC where they belong. 2011-07-23 00:45:41 +00:00
unittests Add APInt(numBits, ArrayRef<uint64_t> bigVal) constructor to prevent future ambiguity 2011-07-18 21:45:40 +00:00
utils We always bounds check the bit set, there is no need to emit zero bytes at the end. 2011-07-23 02:49:37 +00:00
website
.gitignore Ignore Vim swap files 2011-05-31 21:54:28 +00:00
build-for-llvm-top.sh
CMakeLists.txt Added the infrastructute necessary for MIPS JIT support. Patch by Vladimir 2011-07-21 16:28:51 +00:00
configure Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo, 2011-07-22 21:58:54 +00:00
CREDITS.TXT For my ego. 2011-07-15 11:26:11 +00:00
LICENSE.TXT Happy new year. 2011-06-12 15:26:54 +00:00
llvm.spec.in
Makefile Install libprofile_rt.dylib where it's more available for gcov support. 2011-06-10 21:47:14 +00:00
Makefile.common
Makefile.config.in build/configure: Add support for --with-extra-ld-options flag (to provide extra 2011-06-16 22:30:38 +00:00
Makefile.rules TableGen'erated MC lowering for simple pseudo-instructions. 2011-07-08 17:36:35 +00:00
ModuleInfo.txt
README.txt reverting test commit 2011-05-12 17:38:08 +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.