hanchenye-llvm-project/llvm
Dan Gohman 0d3d9ee03e Enhance CodePlacementOpt's unconditional intra-loop branch elimination logic
to be more general and understand more varieties of loops.

Teach CodePlacementOpt to reorganize the basic blocks of a loop so that
they are contiguous. This also includes a fair amount of logic for preserving
fall-through edges while doing so. This fixes a BranchFolding-ism where blocks
which can't be made to use a fall-through edge and don't conveniently fit
anywhere nearby get tossed out to the end of the function.

llvm-svn: 84295
2009-10-17 00:32:43 +00:00
..
Xcode Remove the IA-64 backend. 2009-07-24 00:30:09 +00:00
autoconf Undo pthread patch from rev. 83930 & 83823. Credit to Paul Davey. 2009-10-14 11:12:33 +00:00
bindings Expose the rest of the attribute settings. 2009-09-28 04:42:47 +00:00
cmake Fix LLVM CMake build system so that it may now work on Solaris and AuroraUX. 2009-10-12 04:00:11 +00:00
docs Update from Cristina, llvm-gcc doesn't build on the SPARC version of solaris 2009-10-16 16:30:58 +00:00
examples Autoupgrade malloc insts to malloc calls. 2009-10-17 00:00:19 +00:00
include Add a splice member function which accepts a range instead of a 2009-10-17 00:28:24 +00:00
lib Enhance CodePlacementOpt's unconditional intra-loop branch elimination logic 2009-10-17 00:32:43 +00:00
projects install-sh chmods to 0755 by default, and this causes 'git diff' to show 2009-08-28 16:12:48 +00:00
runtime OptimalEdgeProfiling: Creation of profiles. 2009-09-01 19:03:44 +00:00
test Enhance CodePlacementOpt's unconditional intra-loop branch elimination logic 2009-10-17 00:32:43 +00:00
tools Add a CodeGenOpt::Less level to match -O1. It'll be used by clients which do not want post-regalloc scheduling. 2009-10-16 21:02:20 +00:00
unittests Disable another unittest that doesn't work on arm and ppc. 2009-10-15 16:49:16 +00:00
utils Report errors correctly for unselected target intrinsics. 2009-10-15 18:50:03 +00:00
website
win32 Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types. More to come. 2009-07-24 23:12:02 +00:00
CMakeLists.txt Fix LLVM CMake build system so that it may now work on Solaris and AuroraUX. 2009-10-12 04:00:11 +00:00
CREDITS.TXT Add myself to the blame list. 2009-08-20 15:20:15 +00:00
LICENSE.TXT Add regular expression matching support, based on OpenBSD regexec()/regcomp() 2009-08-30 08:24:09 +00:00
Makefile Reconfigure automatically when Base.td.in is changed. 2009-10-09 02:40:01 +00:00
Makefile.common
Makefile.config.in Enable -g with DEBUG_SYMBOLS and --enable-debug-symbols instead of 2009-09-27 17:47:29 +00:00
Makefile.rules Tablegen target intrinsics from the target main .td file. 2009-10-15 18:48:47 +00:00
ModuleInfo.txt
README.txt First test commit 2009-10-05 22:29:11 +00:00
build-for-llvm-top.sh
configure Undo pthread patch from rev. 83930 & 83823. Credit to Paul Davey. 2009-10-14 11:12:33 +00:00
llvm.spec.in

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.