llvm-6502/lib
Chandler Carruth 2e38cf961d Introduce a loop block rotation optimization to the new block placement
pass. This is designed to achieve one of the important optimizations
that the old code placement pass did, but more simply.

This is a somewhat rough and *very* conservative version of the
transform. We could get a lot fancier here if there are profitable cases
to do so. In particular, this only looks for a single pattern, it
insists that the loop backedge being rotated away is the last backedge
in the chain, and it doesn't provide any means of doing better in-loop
placement due to the rotation. However, it appears that it will handle
the important loops I am finding in the LLVM test suite.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145158 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-27 00:38:03 +00:00
..
Analysis Move code into anonymous namespaces. 2011-11-26 23:01:57 +00:00
Archive build: Add initial cut at LLVMBuild.txt files. 2011-11-03 18:53:17 +00:00
AsmParser build: Add initial cut at LLVMBuild.txt files. 2011-11-03 18:53:17 +00:00
Bitcode build: Add initial cut at LLVMBuild.txt files. 2011-11-03 18:53:17 +00:00
CodeGen Introduce a loop block rotation optimization to the new block placement 2011-11-27 00:38:03 +00:00
DebugInfo Audited all the format strings in libDebugInfo and fixed those that didn't match the types. 2011-11-05 16:01:13 +00:00
ExecutionEngine Sink codegen optimization level into MCCodeGenInfo along side relocation model 2011-11-16 08:38:26 +00:00
Linker build: Add initial cut at LLVMBuild.txt files. 2011-11-03 18:53:17 +00:00
MC This patch addresses gp relative fixups/relocations for jump tables. 2011-11-23 22:18:04 +00:00
Object Object/COFF: Support common symbols. 2011-11-16 23:36:12 +00:00
Support Fix APFloat::convert so that it handles narrowing conversions correctly; it 2011-11-26 03:38:02 +00:00
TableGen ARM vldm and vstm VFP instructions can take a data type suffix. 2011-11-11 23:08:10 +00:00
Target Move code into anonymous namespaces. 2011-11-26 23:01:57 +00:00
Transforms Move code into anonymous namespaces. 2011-11-26 23:01:57 +00:00
VMCore Devirtualize Pass::getPassID, overriding it isn't useful and it gets called a lot. 2011-11-24 21:14:11 +00:00
CMakeLists.txt
LLVMBuild.txt build: Add initial cut at LLVMBuild.txt files. 2011-11-03 18:53:17 +00:00
Makefile