llvm-project/llvm/lib/Transforms
Dehao Chen 41d72a8632 Use profile info to adjust loop unroll threshold.
Summary:
For flat loop, even if it is hot, it is not a good idea to unroll in runtime, thus we set a lower partial unroll threshold.
For hot loop, we set a higher unroll threshold and allows expensive tripcount computation to allow more aggressive unrolling.

Reviewers: davidxl, mzolotukhin

Subscribers: sanjoy, mehdi_amini, llvm-commits

Differential Revision: https://reviews.llvm.org/D26527

llvm-svn: 287186
2016-11-17 01:17:02 +00:00
..
Coroutines [coroutines] Store an address of destroy OR cleanup part in the coroutine frame. 2016-10-08 00:22:50 +00:00
Hello Add auto-exporting of symbols from tools so that plugins work on Windows 2016-05-26 11:16:43 +00:00
IPO Introduce GlobalSplit pass. 2016-11-16 23:40:26 +00:00
InstCombine [InstCombine] replace unreachable with assert and remove unreachable code; NFCI 2016-11-16 20:40:02 +00:00
Instrumentation [sancov] Name the global containing the main source file name 2016-11-16 16:50:43 +00:00
ObjCARC Only log the visit of a return instruction if we in fact found a return 2016-11-04 06:59:50 +00:00
Scalar Use profile info to adjust loop unroll threshold. 2016-11-17 01:17:02 +00:00
Utils Use profile info to adjust loop unroll threshold. 2016-11-17 01:17:02 +00:00
Vectorize [LoopVectorize] Fix for non-determinism in codegen 2016-11-16 18:53:17 +00:00
CMakeLists.txt [coroutines] Part 3 of N: Adding Boilerplate for Coroutine Passes 2016-07-28 21:04:31 +00:00
LLVMBuild.txt [coroutines] Part 3 of N: Adding Boilerplate for Coroutine Passes 2016-07-28 21:04:31 +00:00