llvm-project/llvm/test/Bitcode
Teresa Johnson 2a6b7991d4 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

llvm-svn: 302844
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
2009-06-11-FirstClassAggregateConstant.ll
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
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
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
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
PR23310.test Fix for PR23310: llvm-dis crashes when trying to upgrade an intrinsic. 2015-07-02 16:22:40 +00:00
aggregateInstructions.3.2.ll
aggregateInstructions.3.2.ll.bc
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
attributes-3.3.ll
attributes-3.3.ll.bc
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
binaryFloatInstructions.3.2.ll.bc
binaryIntInstructions.3.2.ll
binaryIntInstructions.3.2.ll.bc
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
bitwiseInstructions.3.2.ll.bc
blockaddress.ll
calling-conventions.3.2.ll
calling-conventions.3.2.ll.bc
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
cmpxchg-upgrade.ll
cmpxchg-upgrade.ll.bc
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
conversionInstructions.3.2.ll
conversionInstructions.3.2.ll.bc
debug-loc-again.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +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
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
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
fcmp-fast.ll Add support for fast-math flags to the FCmp instruction. 2015-07-10 12:52:00 +00:00
flags.ll
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
function-local-metadata.3.5.ll.bc
global-variables.3.2.ll
global-variables.3.2.ll.bc
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
identification.ll Add an (optional) identification block in the bitcode 2015-10-26 18:37:00 +00:00
inalloca.ll
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
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
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
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
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
metadata.3.5.ll.bc
metadata.ll
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
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
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
ptest-new.ll
ptest-old.ll
select.ll [BitcodeReader] Ensure we can read constant vector selects with an i1 condition 2015-08-31 18:00:30 +00:00
shuffle.ll
source-filename.test Restore "[ThinLTO] Use MD5 hash in function index." with fix 2016-02-10 21:55:02 +00:00
ssse3_palignr.ll
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
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
terminatorInstructions.3.2.ll.bc
thinlto-alias.ll Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
thinlto-alias2.ll [ThinLTO] Record calls to aliases 2016-10-08 16:11:42 +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
upgrade-global-ctors.ll.bc
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
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
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
use-list-order2.ll [Bitcode] Add xfail test for PR24755 (uselistorder) 2015-09-10 16:02:24 +00:00
variableArgumentIntrinsic.3.2.ll
variableArgumentIntrinsic.3.2.ll.bc
vectorInstructions.3.2.ll
vectorInstructions.3.2.ll.bc
visibility-styles.3.2.ll
visibility-styles.3.2.ll.bc
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
weak-cmpxchg-upgrade.ll.bc
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