LLVM backend for 6502
Go to file
Andrew Trick 92e946630d Introducing a new method of tracking register pressure. We can't
precisely track pressure on a selection DAG, but we can at least keep
it balanced. This design accounts for various interesting aspects of
selection DAGS: register and subregister copies, glued nodes, dead
nodes, unused registers, etc.

Added SUnit::NumRegDefsLeft and ScheduleDAGSDNodes::RegDefIter.

Note: I disabled PrescheduleNodesWithMultipleUses when register
pressure is enabled, based on no evidence other than I don't think it
makes sense to have both enabled.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124853 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-04 03:18:17 +00:00
autoconf
bindings
cmake Changes for building Clang and others using LLVM as an external 2011-02-03 20:57:36 +00:00
docs
examples
include Introducing a new method of tracking register pressure. We can't 2011-02-04 03:18:17 +00:00
lib Introducing a new method of tracking register pressure. We can't 2011-02-04 03:18:17 +00:00
projects
runtime
test DebugLoc associated with a machine instruction is used to emit location entries. DebugLoc associated with a DBG_VALUE is used to identify lexical scope of the variable. After register allocation, while inserting DBG_VALUE remember original debug location for the first instruction and reuse it, otherwise dwarf writer may be mislead in identifying the variable's scope. 2011-02-04 01:43:25 +00:00
tools
unittests
utils Tidy up a bit. 2011-02-03 23:26:36 +00:00
website
.gitignore
build-for-llvm-top.sh
CMakeLists.txt Moved to Clang's source tree its configuration options and associated 2011-02-03 22:47:59 +00:00
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
Makefile
Makefile.common
Makefile.config.in
Makefile.rules Factor the computation of the basename of libraries. This avoids renaming 2011-02-03 22:01:15 +00:00
ModuleInfo.txt
README.txt

\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.