hanchenye-llvm-project/llvm/lib/Transforms
Vedant Kumar dd4be53b20 [HotColdSplitting] Allow outlining single-block cold regions
It can be profitable to outline single-block cold regions because they
may be large.

Allow outlining single-block regions if they have over some threshold of
non-debug, non-terminator instructions. I chose 3 as the threshold after
experimenting with several internal frameworks.

In practice, reducing the threshold further did not give much
improvement, whereas increasing it resulted in substantial regressions.

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

llvm-svn: 345524
2018-10-29 19:15:39 +00:00
..
AggressiveInstCombine [Aggressive InstCombine] Move C bindings to their own header file. 2018-09-05 11:41:12 +00:00
Coroutines [TI removal] Make `getTerminator()` return a generic `Instruction`. 2018-10-15 10:42:50 +00:00
Hello
IPO [HotColdSplitting] Allow outlining single-block cold regions 2018-10-29 19:15:39 +00:00
InstCombine [FPEnv] Last BinaryOperator::isFNeg(...) to m_FNeg(...) changes 2018-10-25 18:09:33 +00:00
Instrumentation Revert "[PassManager/Sanitizer] Enable usage of ported AddressSanitizer passes with -fsanitize=address" 2018-10-26 22:51:51 +00:00
ObjCARC [TI removal] Switch ObjCARC code to directly use the nice range-based 2018-10-18 00:38:34 +00:00
Scalar Fix -Wdocumentation warning. NFCI. 2018-10-27 15:14:42 +00:00
Utils [Local] Keep K's range if K does not move when combining metadata. 2018-10-27 16:53:45 +00:00
Vectorize [LV] Don't have fold-tail under optsize invalidate interleave-groups when 2018-10-24 07:11:38 +00:00
CMakeLists.txt Another try to commit 323321 (aggressive instruction combine). 2018-01-25 12:06:32 +00:00
LLVMBuild.txt Another try to commit 323321 (aggressive instruction combine). 2018-01-25 12:06:32 +00:00