llvm/lib
Teresa Johnson 5758e8da00 [ThinLTO] Ensure we always select the same function copy to import
Summary:
Check if the first eligible callee is under the instruction threshold.
Checking this on the first eligible callee ensures that we don't end
up selecting different callees to import when we invoke this routine
with different thresholds due to reaching the callee via paths that
are shallower or hotter (when there are multiple copies, i.e. with
weak or linkonce linkage). We don't want to leave the decision of which
copy to import up to the backend.

Reviewers: mehdi_amini

Subscribers: inglorion, fhahn, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@308078 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-15 04:53:05 +00:00
..
Analysis [TTI] Refine the cost of EXT in getUserCost() 2017-07-15 02:12:16 +00:00
AsmParser Enhance synchscope representation 2017-07-11 22:23:00 +00:00
BinaryFormat Revert "Revert "Revert "Revert "Switch external cvtres.exe for llvm's own resource library."""" 2017-07-08 03:06:10 +00:00
Bitcode Enhance synchscope representation 2017-07-11 22:23:00 +00:00
CodeGen [TTI] Refine the cost of EXT in getUserCost() 2017-07-15 02:12:16 +00:00
DebugInfo Remove set but not used variables from the debug info verifier code. 2017-07-14 01:40:47 +00:00
Demangle [ItaniumDemangle] Fix a exponential string copying bug 2017-05-28 23:24:52 +00:00
ExecutionEngine [ORC] Errorize the ORC APIs. 2017-07-07 02:59:13 +00:00
Fuzzer [libFuzzer] remove stale code 2017-07-15 01:31:40 +00:00
IR [Dominators] Implement incremental deletions 2017-07-14 21:58:53 +00:00
IRReader Timer: Track name and description. 2016-11-18 19:43:18 +00:00
LineEditor
Linker [Linker] Add directives to support mixing ARM/Thumb module-level inline asm. 2017-07-12 11:52:28 +00:00
LTO Use DenseMap instead std::map for GVSummaryMapTy. 2017-07-10 20:12:54 +00:00
MC Simplify interface now that we don't need to pass IsPCRel. NFC. 2017-07-11 23:56:10 +00:00
Object [WebAssembly] Expose the offset of each data segment 2017-07-12 00:24:54 +00:00
ObjectYAML [WebAssembly] Expose the offset of each data segment 2017-07-12 00:24:54 +00:00
Option [Bash-autocompletion] Auto complete cc1 options if -cc1 is specified 2017-07-08 17:48:59 +00:00
Passes [PM] Enable registration of out-of-tree passes with PassBuilder 2017-07-10 10:57:55 +00:00
ProfileData llvm-profdata: Reduce memory usage by using Error callback rather than member 2017-07-10 03:04:59 +00:00
Support Put std::mutex usage behind #ifdefs to pacify the sanitizer buildbot 2017-07-13 16:56:24 +00:00
TableGen [BinaryFormat, Option, TableGen] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-16 00:43:26 +00:00
Target [AArch64] Avoid selecting XZR inline ASM memory operand 2017-07-14 21:46:16 +00:00
Testing Mark LLVMTestingSupport as not installed in LLVMBuild. 2017-06-19 22:01:50 +00:00
ToolDrivers [GSoC] Flag value completion for clang 2017-06-20 16:31:31 +00:00
Transforms [ThinLTO] Ensure we always select the same function copy to import 2017-07-15 04:53:05 +00:00
XRay Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
CMakeLists.txt [gtest] Create a shared include directory for gtest utilities. 2017-06-14 16:41:50 +00:00
LLVMBuild.txt [gtest] Create a shared include directory for gtest utilities. 2017-06-14 16:41:50 +00:00