llvm/test/Bitcode
Teresa Johnson 7b29966a93 Restrict call metadata based hotness detection to Sample PGO mode
Summary:
Don't use the metadata on call instructions for determining hotness
unless we are in sample PGO mode, where it is needed because profile
counts are not accurate. In instrumentation mode this is not necessary
and does more harm than good when calls have VP metadata that hasn't
been properly scaled after transformations or dropped after constant
prop based devirtualization (both should be fixed, but we don't need
to do this in the first place for instrumentation PGO).

This required adjusting a number of tests to distinguish between sample
and instrumentation PGO handling, and to add in profile summary metadata
so that getProfileCount can get the summary.

Reviewers: davidxl, danielcdh

Subscribers: aemerson, rengolin, mehdi_amini, Prazek, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@302844 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-11 23:18:05 +00:00
..
Inputs Bitcode: Introduce BitcodeWriter interface. 2016-11-29 20:43:47 +00:00
2006-12-11-Cast-ConstExpr.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
2009-06-11-FirstClassAggregateConstant.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
aggregateInstructions.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
aggregateInstructions.3.2.ll.bc Ensure bitcode encoding of instructions and their operands stays stable. 2014-02-26 12:06:36 +00:00
anon-functions.ll Fix PR25101 - Handle anonymous functions without VST entries 2015-10-10 14:18:36 +00:00
arm32_neon_vcnt_upgrade.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
atomic.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
attributes-3.3.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
attributes-3.3.ll.bc Make .bc en/decoding of AttrKind stable 2013-07-26 04:16:55 +00:00
attributes.ll Add speculatable function attribute 2017-04-28 20:25:27 +00:00
auto_upgrade_intrinsics.bc Upgrade TBAA *before* upgrading intrinsics 2016-03-16 23:17:54 +00:00
avr-calling-conventions.ll [AVR] Add calling convention parser tokens 2016-03-03 10:08:02 +00:00
avr-calling-conventions.ll.bc [AVR] Add calling convention parser tokens 2016-03-03 10:08:02 +00:00
binaryFloatInstructions.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
binaryFloatInstructions.3.2.ll.bc Ensure bitcode encoding of instructions and their operands stays stable. 2014-02-26 12:06:36 +00:00
binaryIntInstructions.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
binaryIntInstructions.3.2.ll.bc Ensure bitcode encoding of instructions and their operands stays stable. 2014-02-26 12:06:36 +00:00
bitcode-wrapper-header-armv7m.ll [llvm-bcanalyzer] Dump bitcode wrapper header 2016-01-29 05:55:09 +00:00
bitcode-wrapper-header-x86_64.ll [llvm-bcanalyzer] Dump bitcode wrapper header 2016-01-29 05:55:09 +00:00
bitwiseInstructions.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
bitwiseInstructions.3.2.ll.bc Ensure bitcode encoding of instructions and their operands stays stable. 2014-02-26 12:06:36 +00:00
blockaddress.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
calling-conventions.3.2.ll Parse 'ghccc' in .ll files as the GHC convention (cc 10) 2014-12-01 21:04:44 +00:00
calling-conventions.3.2.ll.bc Ensure bitcode encoding of calling conventions stays stable. Patch by Boaz Ouriel. 2013-12-22 07:51:53 +00:00
case-ranges-3.3.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
case-ranges-3.3.ll.bc Revert patches to add case-range support for PR1255. 2013-09-09 19:14:35 +00:00
cmpxchg-upgrade.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
cmpxchg-upgrade.ll.bc IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
cmpxchg.3.6.ll [opaque pointer type] Encode the pointee type in the bitcode for 'cmpxchg' 2015-04-28 04:30:29 +00:00
cmpxchg.3.6.ll.bc [opaque pointer type] Encode the pointee type in the bitcode for 'cmpxchg' 2015-04-28 04:30:29 +00:00
compatibility-3.6.ll Change the default attributes for llvm.prefetch to inaccessiblemem_or_argmemonly 2017-03-25 20:20:23 +00:00
compatibility-3.6.ll.bc [IR] Limit bits used for CallingConv::ID, update tests 2015-10-27 21:17:06 +00:00
compatibility-3.7.ll Change the default attributes for llvm.prefetch to inaccessiblemem_or_argmemonly 2017-03-25 20:20:23 +00:00
compatibility-3.7.ll.bc [IR] Limit bits used for CallingConv::ID, update tests 2015-10-27 21:17:06 +00:00
compatibility-3.8.ll Change the default attributes for llvm.prefetch to inaccessiblemem_or_argmemonly 2017-03-25 20:20:23 +00:00
compatibility-3.8.ll.bc [Bitcode] Add compatibility test for the 3.8 release 2016-03-16 05:43:03 +00:00
compatibility-3.9.ll Change the default attributes for llvm.prefetch to inaccessiblemem_or_argmemonly 2017-03-25 20:20:23 +00:00
compatibility-3.9.ll.bc [Bitcode] Add compatibility test for the 3.9 release 2016-09-09 17:24:31 +00:00
compatibility-4.0.ll Change the default attributes for llvm.prefetch to inaccessiblemem_or_argmemonly 2017-03-25 20:20:23 +00:00
compatibility-4.0.ll.bc [Bitcode] Add compatibility test for the 4.0 release 2017-03-17 17:53:26 +00:00
compatibility.ll AMDGPU: Add AMDGPU_HS calling convention 2017-05-02 15:41:10 +00:00
constantsTest.3.2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
constantsTest.3.2.ll.bc Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
conversionInstructions.3.2.ll Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
conversionInstructions.3.2.ll.bc Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
debug-loc-again.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
DICompileUnit-no-DWOId.ll DI: Disallow uniquable DICompileUnits 2015-08-03 17:26:41 +00:00
DICompileUnit-no-DWOId.ll.bc IR / debug info: Add a DWOId field to DICompileUnit, 2015-05-21 20:37:30 +00:00
DIExpression-4.0.ll [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation 2016-12-05 18:04:47 +00:00
DIExpression-4.0.ll.bc [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation 2016-12-05 18:04:47 +00:00
DIExpression-aggresult.ll PR32382: Fix emitting complex DWARF expressions. 2017-04-18 01:21:53 +00:00
DIExpression-aggresult.ll.bc PR32382: Fix emitting complex DWARF expressions. 2017-04-18 01:21:53 +00:00
DIExpression-deref.ll PR32382: Fix emitting complex DWARF expressions. 2017-04-18 01:21:53 +00:00
DIExpression-deref.ll.bc PR32382: Fix emitting complex DWARF expressions. 2017-04-18 01:21:53 +00:00
diglobalvariable-3.8.ll [IR] Remove the DIExpression field from DIGlobalVariable. 2016-12-20 02:09:43 +00:00
diglobalvariable-3.8.ll.bc [IR] Remove the DIExpression field from DIGlobalVariable. 2016-12-20 02:09:43 +00:00
DIGlobalVariableExpression2.ll Fix bitcode upgrade for DIGlobalVariables with a var: field. 2017-02-08 17:44:43 +00:00
DIGlobalVariableExpression2.ll.bc Fix bitcode upgrade for DIGlobalVariables with a var: field. 2017-02-08 17:44:43 +00:00
DIGlobalVariableExpression.ll Fix the bitcode upgrade for DIGlobalVariable in a DIImportedEntity context. 2017-02-07 17:35:41 +00:00
DIGlobalVariableExpression.ll.bc Fix the bitcode upgrade for DIGlobalVariable in a DIImportedEntity context. 2017-02-07 17:35:41 +00:00
dilocalvariable-3.9.ll DebugInfo: add bitcode upgrade test for alignment 2016-10-26 08:34:19 +00:00
dilocalvariable-3.9.ll.bc DebugInfo: add bitcode upgrade test for alignment 2016-10-26 08:34:19 +00:00
DILocalVariable-explicit-tags.ll [Bitcode] Fix + regenerate old test so that it includes a DICompileUnit. 2016-04-12 15:51:23 +00:00
DILocalVariable-explicit-tags.ll.bc [Bitcode] Fix + regenerate old test so that it includes a DICompileUnit. 2016-04-12 15:51:23 +00:00
DINamespace.ll Remove line and file from DINamespace. 2017-04-28 22:25:46 +00:00
DINamespace.ll.bc Add DWARF debug info support for C++11 inline namespaces. 2016-11-03 19:42:02 +00:00
DISubprogram-distinct-definitions.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
DISubprogram-distinct-definitions.ll.bc [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
dityperefs-3.8.ll Fix the bitcode upgrade for DIGlobalVariable in a DIImportedEntity context. 2017-02-07 17:35:41 +00:00
dityperefs-3.8.ll.bc BitcodeReader: Fix some holes in upgrade from r267296 2016-04-24 06:52:01 +00:00
drop-debug-info.3.5.ll llvm-dis: Stop crashing when dropping debug info 2015-02-25 01:10:03 +00:00
drop-debug-info.3.5.ll.bc llvm-dis: Stop crashing when dropping debug info 2015-02-25 01:10:03 +00:00
extractelement.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
fcmp-fast.ll Add support for fast-math flags to the FCmp instruction. 2015-07-10 12:52:00 +00:00
flags.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
function-encoding-rel-operands.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
function-local-metadata.3.5.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
function-local-metadata.3.5.ll.bc IR: Fix bitcode compatability filenames 2014-12-08 00:41:39 +00:00
global-variables.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
global-variables.3.2.ll.bc Ensure bitcode encoding of global variable attributes stays stable. Patch by Boaz Ouriel. 2013-12-15 11:50:45 +00:00
globalvariable-attributes.ll [IR] Allow attributes with global variables 2017-05-11 12:28:08 +00:00
highLevelStructure.3.2.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
highLevelStructure.3.2.ll.bc Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
identification.ll Add an (optional) identification block in the bitcode 2015-10-26 18:37:00 +00:00
inalloca.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
invalid.ll Add writeonly IR attribute 2016-07-04 08:01:29 +00:00
invalid.ll.bc Add writeonly IR attribute 2016-07-04 08:01:29 +00:00
invalid.test Bitcode: Introduce initial multi-module reader API. 2016-11-16 21:44:45 +00:00
linkage-types-3.2.ll Bring r226038 back. 2015-01-19 15:16:06 +00:00
linkage-types-3.2.ll.bc Ensure bitcode encoding of linkage types stays stable. Patch by Boaz Ouriel 2013-12-01 10:16:35 +00:00
local-linkage-default-visibility.3.4.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
local-linkage-default-visibility.3.4.ll.bc IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
mdnodes-distinct-in-post-order.ll Add an index for Module Metadata record in the bitcode 2016-12-28 22:30:28 +00:00
mdnodes-distinct-nodes-break-cycles.ll Add an index for Module Metadata record in the bitcode 2016-12-28 22:30:28 +00:00
mdnodes-distinct-nodes-first.ll Add an index for Module Metadata record in the bitcode 2016-12-28 22:30:28 +00:00
mdnodes-in-post-order.ll Add an index for Module Metadata record in the bitcode 2016-12-28 22:30:28 +00:00
mdstring-high-bits.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
memInstructions.3.2.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
memInstructions.3.2.ll.bc Ensure bitcode encoding of instructions and their operands stays stable. 2014-03-02 15:26:36 +00:00
metadata-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
metadata-function-blocks.ll Add an index for Module Metadata record in the bitcode 2016-12-28 22:30:28 +00:00
metadata-only-empty-string.ll BitcodeReader: Allow METADATA_STRINGS to only have !"" 2016-03-29 05:25:17 +00:00
metadata-strings.ll Reapply ~"Bitcode: Collect all MDString records into a single blob" 2016-03-27 23:17:54 +00:00
metadata.3.5.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
metadata.3.5.ll.bc Bitcode: Add METADATA_NODE and METADATA_VALUE 2014-12-11 23:02:24 +00:00
metadata.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
miscInstructions.3.2.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
miscInstructions.3.2.ll.bc Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
module_hash.ll Move summary creation out of llvm-as into opt 2016-04-12 21:35:18 +00:00
multi-module.ll Bitcode: Add a more comprehensive multi-module test now that we have both llvm-cat and llvm-modextract. 2016-11-29 21:55:09 +00:00
null-type.ll Bitcode: Introduce initial multi-module reader API. 2016-11-16 21:44:45 +00:00
null-type.ll.bc
old-aliases.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
old-aliases.ll.bc Fix most of PR10367. 2014-05-16 19:35:39 +00:00
operand-bundles-bc-analyzer.ll Symbolize operand bundle blocks for bcanalyzer 2016-04-26 05:59:08 +00:00
operand-bundles.ll [Bitcode][Asm] Teach LLVM to read and write operand bundles. 2015-09-24 23:34:52 +00:00
padding.test Improve handling of end of file in the bitcode reader. 2015-06-16 20:03:39 +00:00
pr18704.ll llvm-dis: Stop crashing when dropping debug info 2015-02-25 01:10:03 +00:00
pr18704.ll.bc All new elements except the last one initialized to NULL. Ideally, once parsing is complete, all elements should be non-NULL. 2014-03-27 12:08:23 +00:00
PR23310.test Fix for PR23310: llvm-dis crashes when trying to upgrade an intrinsic. 2015-07-02 16:22:40 +00:00
ptest-new.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
ptest-old.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
select.ll [BitcodeReader] Ensure we can read constant vector selects with an i1 condition 2015-08-31 18:00:30 +00:00
shuffle.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
source-filename.test Restore "[ThinLTO] Use MD5 hash in function index." with fix 2016-02-10 21:55:02 +00:00
ssse3_palignr.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
standardCIntrinsic.3.2.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
standardCIntrinsic.3.2.ll.bc Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
summary_version.ll [ThinLTO] Subsume all importing checks into a single flag 2017-01-05 14:32:16 +00:00
tailcall.ll [IR] Limit bits used for CallingConv::ID, update tests 2015-10-27 21:17:06 +00:00
terminatorInstructions.3.2.ll Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
terminatorInstructions.3.2.ll.bc Ensure bitcode encoding stays stable. 2014-09-23 08:48:01 +00:00
thinlto-alias2.ll [ThinLTO] Record calls to aliases 2016-10-08 16:11:42 +00:00
thinlto-alias.ll Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
thinlto-empty-summary-section.ll [ThinLTO] Always emit a summary when compiling in ThinLTO mode 2016-09-20 23:07:17 +00:00
thinlto-function-summary-callgraph-pgo.ll Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
thinlto-function-summary-callgraph-profile-summary.ll Restrict call metadata based hotness detection to Sample PGO mode 2017-05-11 23:18:05 +00:00
thinlto-function-summary-callgraph-sample-profile-summary.ll Restrict call metadata based hotness detection to Sample PGO mode 2017-05-11 23:18:05 +00:00
thinlto-function-summary-callgraph.ll Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
thinlto-function-summary-originalnames.ll Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
thinlto-function-summary-refgraph.ll Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
thinlto-function-summary.ll Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
thinlto-summary-globalvar.ll [PM] Port ModuleSummaryIndex analysis to new pass manager 2016-08-12 13:53:02 +00:00
thinlto-summary-linkage-types.ll [ThinLTO] Use valueid instead of bitcode offsets in combined index file 2016-04-27 13:28:35 +00:00
thinlto-summary-section.ll [ThinLTO] Subsume all importing checks into a single flag 2017-01-05 14:32:16 +00:00
thinlto-type-tests.ll IR: Function summary representation for type tests. 2016-12-21 23:03:45 +00:00
thinlto-type-vcalls.ll IR: Function summary extensions for whole-program devirtualization pass. 2017-02-10 22:29:38 +00:00
thinlto-unused-type-tests.ll IR: Function summary representation for type tests. 2016-12-21 23:03:45 +00:00
upgrade-debug-info-for-profiling.ll Change debug-info-for-profiling from a TargetOption to a function attribute. 2017-02-01 22:45:09 +00:00
upgrade-debug-info-for-profiling.ll.bc Change debug-info-for-profiling from a TargetOption to a function attribute. 2017-02-01 22:45:09 +00:00
upgrade-global-ctors.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
upgrade-global-ctors.ll.bc Handle ConstantAggregateZero when upgrading global_ctors. 2014-05-17 21:00:22 +00:00
upgrade-loop-metadata.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
upgrade-loop-metadata.ll.bc Add some test files for r211710. 2014-06-25 15:41:39 +00:00
upgrade-module-flag.ll Fix autoupgrade logic for Objective-C class properties module flag 2016-09-16 00:38:18 +00:00
upgrade-pointer-address-space.ll [DebugInfo] Emit address space with DW_AT_address_class attribute for pointer and reference types 2017-03-08 23:55:44 +00:00
upgrade-pointer-address-space.ll.bc [DebugInfo] Emit address space with DW_AT_address_class attribute for pointer and reference types 2017-03-08 23:55:44 +00:00
upgrade-subprogram-this.ll [codeview] Add DISubprogram::ThisAdjustment 2016-07-01 02:41:21 +00:00
upgrade-subprogram-this.ll.bc [codeview] Add DISubprogram::ThisAdjustment 2016-07-01 02:41:21 +00:00
upgrade-subprogram.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
upgrade-subprogram.ll.bc DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
upgrade-tbaa.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
use-list-order2.ll [Bitcode] Add xfail test for PR24755 (uselistorder) 2015-09-10 16:02:24 +00:00
use-list-order.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
variableArgumentIntrinsic.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
variableArgumentIntrinsic.3.2.ll.bc Ensure bitcode encoding of instructions and their operands stays stable. 2014-03-02 15:26:36 +00:00
vectorInstructions.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
vectorInstructions.3.2.ll.bc Ensure bitcode encoding of instructions and their operands stays stable. 2014-02-26 12:06:36 +00:00
visibility-styles.3.2.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
visibility-styles.3.2.ll.bc Ensure bitcode encoding of visibility styles stays stable. Patch by Boaz Ouriel. 2013-12-08 11:35:09 +00:00
vst-forward-declaration.ll Restore "Function bitcode index in Value Symbol Table and lazy reading support" 2015-09-17 20:12:00 +00:00
weak-cmpxchg-upgrade.ll verify-uselistorder: Force -preserve-bc-use-list-order 2014-08-19 21:08:27 +00:00
weak-cmpxchg-upgrade.ll.bc IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
weak-macho-3.5.ll Bitcode: Don't create comdats when autoupgrading macho bitcode 2015-01-20 05:58:07 +00:00
weak-macho-3.5.ll.bc Bitcode: Don't create comdats when autoupgrading macho bitcode 2015-01-20 05:58:07 +00:00