Old fork of llvm-mirror, used on older RPCS3 builds
Go to file
Jakob Stoklund Olesen 49743b18f5 Add an RS_Split2 stage used for loop prevention.
This mechanism already exists, but the RS_Split2 stage makes it clearer.

When live range splitting creates ranges that may not be making
progress, they are marked RS_Split2 instead of RS_New. These ranges may
be split again, but only in a way that can be proven to make progress.

For local ranges, that means they must be split into ranges used by
strictly fewer instructions.

For global ranges, region splitting is bypassed and the RS_Split2
ranges go straight to per-block splitting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135912 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-25 15:25:43 +00:00
autoconf
bindings
cmake CMake: generalize the system that creates custom targets for 2011-07-25 14:11:55 +00:00
docs Convert GetElementPtrInst to use ArrayRef. 2011-07-25 09:48:08 +00:00
examples
include Remove uses of std::vector from TypeBuilder. 2011-07-25 10:32:27 +00:00
lib Add an RS_Split2 stage used for loop prevention. 2011-07-25 15:25:43 +00:00
projects
runtime
test
tools
unittests Convert GetElementPtrInst to use ArrayRef. 2011-07-25 09:48:08 +00:00
utils
website
.gitignore
build-for-llvm-top.sh
CMakeLists.txt
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
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.