llvm-project/llvm/test
James Molloy 6df8f27c95 [InlineCost] Remove skew when calculating call costs
When calculating the cost of a call instruction we were applying a heuristic penalty as well as the cost of the instruction itself.

However, when calculating the benefit from inlining we weren't discounting the equivalent penalty for the call instruction that would be removed! This caused skew in the calculation and meant we wouldn't inline in the following, trivial case:

  int g() {
    h();
  }
  int f() {
    g();
  }

llvm-svn: 286814
2016-11-14 11:14:41 +00:00
..
Analysis IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
Assembler IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
Bindings [OCaml] Adapt to the new attribute C API. 2016-11-12 03:38:30 +00:00
Bitcode IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
BugPoint Add -strip-nonlinetable-debuginfo capability 2016-10-25 18:44:13 +00:00
CodeGen [X86] Cleanup 'x' and 'y' mnemonic suffixes for vcvtpd2dq/vcvttpd2dq/vcvtpd2ps and similar instructions. 2016-11-14 01:53:29 +00:00
DebugInfo Emit the DW_AT_type for a C++ static member definition 2016-11-08 22:11:38 +00:00
Examples
ExecutionEngine Make this test Windows-only (try to placate buildbots). 2016-11-03 16:43:10 +00:00
Feature
FileCheck
Instrumentation [tsan][llvm] Implement the function attribute to disable TSan checking at run time 2016-11-11 23:01:02 +00:00
Integer
JitListener
LTO Revert "[ThinLTO] Prevent exporting of locals used/defined in module level asm" 2016-11-09 01:45:13 +00:00
LibDriver
Linker
MC [AVX-512] Add suffixless aliases for EVEX encoded vcvtsi2ss/vcvtsi2sd/vcvtusi2ss/vcvtusi2sd. This matches the VEX behavior. 2016-11-14 02:46:58 +00:00
Object Add error handling to getEntry. 2016-11-03 18:05:33 +00:00
ObjectYAML
Other Enable Loop Sink pass for functions that has profile. 2016-11-09 00:58:19 +00:00
SymbolRewriter
TableGen
ThinLTO/X86 Restore part of "[ThinLTO] Prevent exporting of locals used/defined in module level asm" 2016-11-10 16:57:32 +00:00
Transforms [InlineCost] Remove skew when calculating call costs 2016-11-14 11:14:41 +00:00
Unit
Verifier Verifier: Reject any unknown named MD nodes in the llvm.dbg namespace. 2016-10-05 22:15:37 +00:00
YAMLParser
tools test: remove the archive before modifying it 2016-11-13 20:43:41 +00:00
.clang-format
CMakeLists.txt [OCaml] Clear cross-target test deps when building out-of-tree 2016-11-12 14:58:30 +00:00
TestRunner.sh
lit.cfg test: synchronise lit substitutions 2016-11-13 19:37:00 +00:00
lit.site.cfg.in