llvm-6502/lib
Hal Finkel 6bbb01bbf8 Move partial/runtime unrolling late in the pipeline
The generic (concatenation) loop unroller is currently placed early in the
standard optimization pipeline. This is a good place to perform full unrolling,
but not the right place to perform partial/runtime unrolling. However, most
targets don't enable partial/runtime unrolling, so this never mattered.

However, even some x86 cores benefit from partial/runtime unrolling of very
small loops, and follow-up commits will enable this. First, we need to move
partial/runtime unrolling late in the optimization pipeline (importantly, this
is after SLP and loop vectorization, as vectorization can drastically change
the size of a loop), while keeping the full unrolling where it is now. This
change does just that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205264 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-31 23:23:51 +00:00
..
Analysis
AsmParser
Bitcode
CodeGen [Stackmaps] Update the stackmap format to use 64-bit relocations for the function address and properly align all entries. 2014-03-31 22:14:04 +00:00
DebugInfo
ExecutionEngine [Allocator] Lift the slab size and size threshold into template 2014-03-30 12:07:07 +00:00
IR Intrinsics: add LLVMHalfElementsVectorType constraint 2014-03-29 07:04:54 +00:00
IRReader
LineEditor
Linker
LTO This patch fixes LTO's RecordStreamer so that it records symbols in the MCExpr 2014-03-31 16:59:13 +00:00
MC [MC] Remove an unused (and broken) variant of the setupForSymbolicDisassembly 2014-03-30 04:27:33 +00:00
Object [yaml2obj] Add support for ELF e_flags. 2014-03-31 09:44:05 +00:00
Option
ProfileData
Support Support: generalise object type handling for Windows 2014-03-31 16:34:41 +00:00
TableGen tblgen: Twinify PrintFatalError. 2014-03-29 17:17:15 +00:00
Target [X86] Adjust cost of FP_TO_UINT v4f64->v4i32 as well 2014-03-31 21:54:48 +00:00
Transforms Move partial/runtime unrolling late in the pipeline 2014-03-31 23:23:51 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile