Go to file
Dehao Chen 63799512b2 Adjust the hotness threshold from 99.9% to 99%.
Summary: We originally set the hotness threshold as 99.9% to be consistent with gcc FDO. But because the inline heuristic is different between 2 compilers: llvm uses bottom-up algorithm while gcc uses priority based. The LLVM algorithm tends to inline too much early that prevents hot callsites from further inlined into its caller. Due to this restriction, we think it is reasonable to lower the hotness threshold to give priority to those that are really hot. Our experiments show that this change would improve performance on large applications. Note that the inline heuristic has great room for further tuning. Once the inline heuristics are refined, we could adjust this threshold to allow inlining for less hot callsites.

Reviewers: davidxl, tejohnson, eraman

Reviewed By: tejohnson

Subscribers: sanjoy, llvm-commits

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

llvm-svn: 310065
2017-08-04 16:20:54 +00:00
clang Revert r304953 for release 5.0.0 2017-08-04 12:37:34 +00:00
clang-tools-extra [clang-tidy] Add missing documents for "IgnoreMacros" option. 2017-08-04 11:25:05 +00:00
compiler-rt [msan] Switch the pvalloc overflow test to a lit test 2017-08-04 07:32:10 +00:00
debuginfo-tests Add a test for PR33166. 2017-05-25 19:33:16 +00:00
libclc configure.py: Make python3 friendly 2017-08-02 15:00:59 +00:00
libcxx Fix libcxx build with glibc 2.26+ by removing xlocale.h include. 2017-08-03 04:28:10 +00:00
libcxxabi [demangler] Fix another bug found by oss-fuzz in r309340 2017-08-01 02:38:41 +00:00
libunwind Partial fix for PR33858 2017-07-26 18:13:57 +00:00
lld [ELF] - Move getSymbols() methods to InputFile. 2017-08-04 11:07:42 +00:00
lldb Cut and paste error from r23162. 2017-08-03 19:38:38 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm Adjust the hotness threshold from 99.9% to 99%. 2017-08-04 16:20:54 +00:00
openmp Exclude version symbols for static libomp 2017-08-02 20:10:00 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [ForwardOpTree] Refactor out forwardSpeculatable(). NFC. 2017-08-04 12:28:42 +00:00