llvm/lib
Rong Xu 9e52f8ee8b [PGO] Memory intrinsic calls optimization based on profiled size
This patch optimizes two memory intrinsic operations: memset and memcpy based
on the profiled size of the operation. The high level transformation is like:
  mem_op(..., size)
  ==>
  switch (size) {
    case s1:
       mem_op(..., s1);
       goto merge_bb;
    case s2:
       mem_op(..., s2);
       goto merge_bb;
    ...
    default:
       mem_op(..., size);
       goto merge_bb;
    }
  merge_bb:

Differential Revision: http://reviews.llvm.org/D28966


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@299446 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-04 16:42:20 +00:00
..
Analysis InstSimplify: Add a hook for shufflevector 2017-04-03 22:05:30 +00:00
AsmParser getPristineRegs is not accurately considering shrink wrapping puts 2017-03-30 22:34:20 +00:00
Bitcode Bitcode: Remove reader support for MODULE_CODE_PURGEVALS. 2017-04-03 17:58:48 +00:00
CodeGen [tablegen][globalisel] Add support for nested instruction matching. 2017-04-04 13:25:23 +00:00
DebugInfo [PDB] Save one type record copy 2017-04-04 00:56:34 +00:00
Demangle Add support for demangling C++11 thread_local variables. 2017-01-31 15:56:36 +00:00
ExecutionEngine Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
Fuzzer [Fuzzer] Flush std::cout before aborting in CxxStringEqTest 2017-04-03 23:00:25 +00:00
IR [X86][LLVM] Converting __mm{|256|512}_movm_epi{8|16|32|64} LLVMIR call into generic intrinsics. 2017-04-04 13:32:14 +00:00
IRReader Timer: Track name and description. 2016-11-18 19:43:18 +00:00
LibDriver LibDriver: Allow resource files to be archive members. 2016-12-15 19:37:46 +00:00
LineEditor
Linker [Linker] Provide callback for internalization 2017-03-13 18:08:11 +00:00
LTO LTO: call getRealLinkageName on IRNames before feeding to getGUID 2017-03-31 21:56:30 +00:00
MC Reland r298901 with modifications (reverted in r298932) 2017-04-03 21:50:04 +00:00
Object [WASM] Remove other comparison of unsigned expression >= 0. 2017-04-01 19:47:52 +00:00
ObjectYAML Add virtual destructor to WasmYAML::Section or avoid memory leak 2017-03-31 22:14:14 +00:00
Option Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
Passes [PGO] Memory intrinsic calls optimization based on profiled size 2017-04-04 16:42:20 +00:00
ProfileData [PGO] Memory intrinsic calls optimization based on profiled size 2017-04-04 16:42:20 +00:00
Support [APInt] Make use of whichWord and maskBit to simplify some code. NFC 2017-04-02 19:35:18 +00:00
TableGen Use print() instead of dump() in code 2017-01-28 02:47:46 +00:00
Target AMDGPU: Remove legacy export intrinsic 2017-04-04 16:34:39 +00:00
Transforms [PGO] Memory intrinsic calls optimization based on profiled size 2017-04-04 16:42:20 +00:00
XRay Spelling mistakes in comments. NFCI. 2017-03-30 12:59:53 +00:00
CMakeLists.txt [XRay] Define the library for XRay trace logs 2017-01-11 06:39:09 +00:00
LLVMBuild.txt Add an c++ itanium demangler to llvm. 2016-09-06 19:16:48 +00:00