llvm-project/llvm/lib/IR
Dehao Chen fed890ea3a Fix the InstCombine to reserve the VP metadata and sets correct call count.
Summary: Currently the VP metadata was dropped when InstCombine converts a call to direct call. This patch converts the VP metadata to branch_weights so that its hotness is recorded.

Reviewers: eraman, davidxl

Reviewed By: davidxl

Subscribers: llvm-commits

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

llvm-svn: 299228
2017-03-31 15:59:52 +00:00
..
AsmWriter.cpp [IR] Add AllowContract to FastMathFlags 2017-03-28 20:11:52 +00:00
AttributeImpl.h Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
AttributeSetNode.h Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
Attributes.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
AttributesCompatFunc.td Provide a way to specify inliner's attribute compatibility and merging. 2015-12-22 23:57:37 +00:00
AutoUpgrade.cpp Let llvm.objectsize be conservative with null pointers 2017-03-21 20:08:59 +00:00
BasicBlock.cpp [IR] Share implementation for pairs of const and non-const methods using const_cast. NFCI 2017-03-27 05:46:58 +00:00
CMakeLists.txt [CMake] NFC. Updating CMake dependency specifications 2016-11-17 04:36:50 +00:00
Comdat.cpp [IR] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-02-17 00:00:09 +00:00
ConstantFold.cpp Fix constant folding of fp2int to large integers 2017-03-19 16:50:25 +00:00
ConstantFold.h IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
ConstantRange.cpp [ConstantRange] Add setSizeSmallerThanOf method. 2017-03-20 06:33:07 +00:00
Constants.cpp Replace APFloatBase static fltSemantics data members with getter functions 2016-12-14 11:57:17 +00:00
ConstantsContext.h [ADT, IR] Fix some Clang-tidy modernize-use-equals-delete and Include What You Use warnings; other minor fixes (NFC). 2016-12-07 22:06:02 +00:00
Core.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
DIBuilder.cpp Revert "Debug Info: Add basic support for external types references." 2017-03-13 22:56:14 +00:00
DataLayout.cpp [IR] Use a binary search in DataLayout::getAlignmentInfo 2017-03-23 06:15:56 +00:00
DebugInfo.cpp Teach stripNonLineTableDebugInfo() to remap DILocations in !llvm.loop nodes. 2017-03-30 20:10:56 +00:00
DebugInfoMetadata.cpp [DebugInfo] Emit address space with DW_AT_address_class attribute for pointer and reference types 2017-03-08 23:55:44 +00:00
DebugLoc.cpp Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
DiagnosticInfo.cpp [Stack Protection] Add diagnostic information for why stack protection was applied to a function 2017-02-28 16:02:37 +00:00
DiagnosticPrinter.cpp
Dominators.cpp Revert "Do not verify dominator tree if it has no roots" 2017-01-25 17:15:48 +00:00
Function.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
GCOV.cpp Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
GVMaterializer.cpp
Globals.cpp [IR] Implement pairs of non-const and const methods using the const version instead of the non-const version. NFCI 2017-03-27 05:47:03 +00:00
IRBuilder.cpp AMDGPU: Basic folds for fmed3 intrinsic 2017-02-27 23:08:49 +00:00
IRPrintingPasses.cpp Implement getPassName() for IR printing passes. 2017-03-10 07:09:20 +00:00
InlineAsm.cpp [IR] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-02-17 00:00:09 +00:00
Instruction.cpp [IR] Add AllowContract to FastMathFlags 2017-03-28 20:11:52 +00:00
Instructions.cpp [IR] Make SwitchInst::CaseIt almost a normal iterator. 2017-03-26 02:49:23 +00:00
IntrinsicInst.cpp Add intrinsics for constrained floating point operations 2017-01-26 23:27:59 +00:00
LLVMBuild.txt
LLVMContext.cpp Add !associated metadata. 2017-03-17 22:17:24 +00:00
LLVMContextImpl.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
LLVMContextImpl.h Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
LegacyPassManager.cpp Reverted: Track validity of pass results 2017-01-15 10:23:18 +00:00
MDBuilder.cpp Add function importing info from samplepgo profile to the module summary. 2017-02-28 18:09:44 +00:00
Mangler.cpp Move llvm::emitLinkerFlagsForGlobalCOFF() to Mangler. 2017-03-31 04:46:50 +00:00
Metadata.cpp Fix the InstCombine to reserve the VP metadata and sets correct call count. 2017-03-31 15:59:52 +00:00
MetadataImpl.h
Module.cpp [IR] Implement pairs of non-const and const methods using the const version instead of the non-const version. NFCI 2017-03-27 05:47:03 +00:00
ModuleSummaryIndex.cpp ThinLTO: handles modules with empty summaries 2016-10-08 04:44:18 +00:00
Operator.cpp [IR] Remove some unneeded includes from Operator.h and fix cpp files that were transitively depending on it. NFC 2017-03-20 05:08:41 +00:00
OptBisect.cpp Remove opt-bisect support for "cases" in favor of debug counters 2017-03-11 01:41:03 +00:00
Pass.cpp Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
PassManager.cpp [PM] Introduce an analysis set used to preserve all analyses over 2017-01-15 06:32:49 +00:00
PassRegistry.cpp Use the range variant of find instead of unpacking begin/end 2016-08-11 22:21:41 +00:00
ProfileSummary.cpp Reapply r271728 after adding move cobstructor for ProfileSummaryInfo 2016-06-03 22:54:26 +00:00
Statepoint.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
SymbolTableListTraitsImpl.h ADT: Remove external uses of ilist_iterator, NFC 2016-09-03 01:22:56 +00:00
Type.cpp IR: Move NumElements field from {Array,Vector}Type to SequentialType. 2016-12-02 03:20:58 +00:00
TypeFinder.cpp [IR] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-02-17 00:00:09 +00:00
Use.cpp
User.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 15:02:18 +00:00
Value.cpp [IR] Implement pairs of non-const and const methods using the const version instead of the non-const version. NFCI 2017-03-27 05:47:03 +00:00
ValueSymbolTable.cpp [IR] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-02-17 00:00:09 +00:00
ValueTypes.cpp getVectorElementType().getSizeInBits() -> getScalarSizeInBits() ; NFCI 2016-09-14 16:37:15 +00:00
Verifier.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00