llvm-project/llvm/test/Bitcode
Philip Reames 0e7c77053f Introduce a "gc-live" bundle for the gc arguments of a statepoint
Currently, gc.relocates are defined in terms of indices into the statepoint's operand list. Given the gc args are at the end of a variable length list of operands, this makes interpreting their indices by hand a tad challenging. We can simplify the statepoint sequence and improve readability quite a bit by pulling these new operands into their own named operand bundle.

This patch defines a new operand bundle tag "gc-live". The semantics of the bundle are the same as the existing gc arguments of a statepoint. This patch simply introduces the definition and codegen for the bundle, future patches will migrate RS4GC to emitting the new form.

Interestingly, with this done and the recent migration to using deopt and gc-transition bundles, we really don't have much left in the statepoint itself. It really looks like the existing ID and flags fields are redundant; we have (existing!) attributes for all of them. I think we'll be able to reduce the gc.statepoint signature to simply a wrapped call (e.g. actual target and actual arguments).

Differential Revision: https://reviews.llvm.org/D80937
2020-06-03 15:00:24 -07:00
..
Inputs Recommit "[BitcodeReader] Validate OpNum, before accessing Record array." 2019-07-14 14:06:25 +00:00
2006-12-11-Cast-ConstExpr.ll
2009-06-11-FirstClassAggregateConstant.ll
DICompileUnit-no-DWOId.ll
DICompileUnit-no-DWOId.ll.bc
DIEnumerator-10.0.ll [DebugInfo] Change DIEnumerator payload type from int64_t to APInt 2020-04-18 12:49:31 -07:00
DIEnumerator-10.0.ll.bc [DebugInfo] Change DIEnumerator payload type from int64_t to APInt 2020-04-18 12:49:31 -07:00
DIExpression-4.0.ll
DIExpression-4.0.ll.bc
DIExpression-aggresult.ll
DIExpression-aggresult.ll.bc
DIExpression-deref.ll
DIExpression-deref.ll.bc
DIExpression-minus-upgrade.ll
DIExpression-minus-upgrade.ll.bc
DIGlobalVariableExpression.ll
DIGlobalVariableExpression.ll.bc
DIGlobalVariableExpression2.ll
DIGlobalVariableExpression2.ll.bc
DILocalVariable-explicit-tags.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
DILocalVariable-explicit-tags.ll.bc
DILocation-implicit-code.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
DILocation-implicit-code.ll.bc [IR] Add a boolean field in DILocation to know if a line must covered or not 2018-09-20 08:53:06 +00:00
DIModule-clang-module.ll [DebugInfo] Fortran module DebugInfo support in LLVM 2020-05-13 12:52:30 +05:30
DIModule-clang-module.ll.bc [DebugInfo] Fortran module DebugInfo support in LLVM 2020-05-13 12:52:30 +05:30
DIModule-fortran-module.ll [DebugInfo] Fortran module DebugInfo support in LLVM 2020-05-13 12:52:30 +05:30
DIModule-fortran-module.ll.bc [DebugInfo] Fortran module DebugInfo support in LLVM 2020-05-13 12:52:30 +05:30
DINamespace.ll
DINamespace.ll.bc
DISubprogram-distinct-definitions.ll [DebugInfo] IR/Bitcode changes for DISubprogram flags. 2018-11-28 21:14:32 +00:00
DISubprogram-distinct-definitions.ll.bc
DISubprogram-v4.ll [DebugInfo] IR/Bitcode changes for DISubprogram flags. 2018-11-28 21:14:32 +00:00
DISubprogram-v4.ll.bc [DebugInfo] IR/Bitcode changes for DISubprogram flags. 2018-11-28 21:14:32 +00:00
DISubprogram-v5.ll [DebugInfoMetadata] Move main subprogram DIFlag into DISPFlags 2019-03-19 13:49:03 +00:00
DISubprogram-v5.ll.bc [DebugInfoMetadata] Move main subprogram DIFlag into DISPFlags 2019-03-19 13:49:03 +00:00
DITemplateParameter-5.0.ll Reland "[DebugInfo][clang][DWARF5]: Added support for debuginfo generation for defaulted parameters 2020-03-02 16:45:48 +05:30
DITemplateParameter-5.0.ll.bc Reland "[DebugInfo][clang][DWARF5]: Added support for debuginfo generation for defaulted parameters 2020-03-02 16:45:48 +05:30
PR23310.test
aarch64-addp-upgrade.bc AArch64: fix bitcode upgrade of @llvm.neon.addp. 2020-01-14 13:41:32 +00:00
aarch64-addp-upgrade.ll AArch64: fix bitcode upgrade of @llvm.neon.addp. 2020-01-14 13:41:32 +00:00
aggregateInstructions.3.2.ll
aggregateInstructions.3.2.ll.bc
anon-functions.ll
apple-clang-700-compat.test [Bitcode] Address backwards compat bug in r342631 2018-09-20 18:59:33 +00:00
arm32_neon_vcnt_upgrade.ll
atomic-no-syncscope.ll
atomic-no-syncscope.ll.bc
atomic.ll
attributes-3.3.ll IR: print value numbers for unnamed function arguments 2019-08-03 14:28:34 +00:00
attributes-3.3.ll.bc
attributes.ll [IR] Convert null-pointer-is-valid into an enum attribute 2020-05-15 19:41:07 +02:00
auto_upgrade_intrinsics.bc
avr-calling-conventions.ll IR: print value numbers for unnamed function arguments 2019-08-03 14:28:34 +00:00
avr-calling-conventions.ll.bc
bcanalyzer-atomics.ll Fix some missing opcodes in bcanalyzer 2018-09-24 12:47:17 +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
bitcode-wrapper-header-x86_64.ll
bitwiseInstructions.3.2.ll
bitwiseInstructions.3.2.ll.bc
blockaddress.ll
byval-upgrade.test Reapply: IR: add optional type to 'byval' function parameters 2019-05-30 18:48:23 +00:00
callbr.ll Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
callbr.ll.bc Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
calling-conventions.3.2.ll Add Windows Control Flow Guard checks (/guard:cf). 2019-10-28 15:19:39 +00:00
calling-conventions.3.2.ll.bc Add Windows Control Flow Guard checks (/guard:cf). 2019-10-28 15:19:39 +00:00
case-ranges-3.3.ll
case-ranges-3.3.ll.bc
cmpxchg-upgrade.ll
cmpxchg-upgrade.ll.bc
cmpxchg.3.6.ll
cmpxchg.3.6.ll.bc
compatibility-3.6.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
compatibility-3.6.ll.bc
compatibility-3.7.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
compatibility-3.7.ll.bc
compatibility-3.8.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
compatibility-3.8.ll.bc
compatibility-3.9.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
compatibility-3.9.ll.bc
compatibility-4.0.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
compatibility-4.0.ll.bc
compatibility-5.0.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
compatibility-5.0.ll.bc
compatibility-6.0.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
compatibility-6.0.ll.bc Add bitcode compatibility test for 6.0 2018-07-09 17:57:48 +00:00
compatibility.ll [IR] Redefine Freeze instruction 2019-11-12 10:49:00 +09:00
constantsTest.3.2.ll
constantsTest.3.2.ll.bc
conversionInstructions.3.2.ll
conversionInstructions.3.2.ll.bc
dataLocation.ll [DebugInfo] support for DW_AT_data_location in llvm 2020-05-15 11:33:17 +05:30
debug-loc-again.ll
dicompileunit-gnu-pubnames.ll DebugInfo: Add metadata support for disabling DWARF pub sections 2018-08-16 21:29:55 +00:00
diglobalvariable-3.8.ll
diglobalvariable-3.8.ll.bc
dilocalvariable-3.9.ll Remove irrelevant references to legacy git repositories from 2019-01-15 16:18:52 +00:00
dilocalvariable-3.9.ll.bc
disubrange-v0.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
disubrange-v0.ll.bc
disubrange.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
dityperefs-3.8.ll
dityperefs-3.8.ll.bc
drop-debug-info.3.5.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
drop-debug-info.3.5.ll.bc
dso_location.ll
extractelement.ll
fcmp-fast.ll augmenting description for fcmp fmf - NFC 2018-04-26 18:17:58 +00:00
flags.ll
fortranSubrange.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
fortranSubrangeBackward.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
fortranSubrangeBackward.ll.bc [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
function-address-space-fwd-decl.ll Allow creating llvm::Function in non-zero address spaces 2018-08-23 09:25:17 +00:00
function-default-address-spaces.ll Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
function-encoding-rel-operands.ll [IR] Add a dedicated FNeg IR Instruction 2018-11-13 18:15:47 +00:00
function-local-metadata.3.5.ll
function-local-metadata.3.5.ll.bc
function-nonzero-address-spaces-types.ll Allow creating llvm::Function in non-zero address spaces 2018-08-23 09:25:17 +00:00
function-nonzero-address-spaces.ll Allow creating llvm::Function in non-zero address spaces 2018-08-23 09:25:17 +00:00
global-variables.3.2.ll
global-variables.3.2.ll.bc
globalvariable-attributes.ll
highLevelStructure.3.2.ll Reapply: IR: add optional type to 'byval' function parameters 2019-05-30 18:48:23 +00:00
highLevelStructure.3.2.ll.bc
identification.ll
inalloca.ll
infer_dso_local.ll [BitcodeReader] Infer the correct runtime preemption for GlobalValue 2018-07-09 16:52:05 +00:00
invalid-functionptr-align.ll Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
invalid-functionptr-align.ll.bc [DataLayout] Check StackNatural and FunctionPtr alignments. 2019-08-07 17:20:55 +00:00
invalid-type-for-null-constant.ll [BitcodeReader] Check if we can create a null constant for type. 2019-08-21 18:20:11 +00:00
invalid-type-for-null-constant.ll.bc [BitcodeReader] Check if we can create a null constant for type. 2019-08-21 18:20:11 +00:00
invalid-weak-external.ll
invalid.ll [NFC] Adjust "invalid.ll.bc" tests to check for AttrKind #255 not #63 2019-07-11 01:14:30 +00:00
invalid.ll.bc [NFC] Adjust "invalid.ll.bc" tests to check for AttrKind #255 not #63 2019-07-11 01:14:30 +00:00
invalid.test Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
linkage-types-3.2.ll
linkage-types-3.2.ll.bc
local-linkage-default-visibility.3.4.ll
local-linkage-default-visibility.3.4.ll.bc
mdnodes-distinct-in-post-order.ll
mdnodes-distinct-nodes-break-cycles.ll
mdnodes-distinct-nodes-first.ll
mdnodes-in-post-order.ll
mdstring-high-bits.ll
memInstructions.3.2.ll StoreInst should store Align, not MaybeAlign 2020-05-15 12:26:58 -07:00
memInstructions.3.2.ll.bc
metadata-2.ll [IR] Disallow llvm.global_ctors and llvm.global_dtors of the 2-field form in textual format 2019-05-15 02:35:32 +00:00
metadata-function-blocks.ll
metadata-only-empty-string.ll
metadata-source.ll
metadata-source.ll.bc
metadata-strings.ll
metadata.3.5.ll
metadata.3.5.ll.bc
metadata.ll
miscInstructions.3.2.ll
miscInstructions.3.2.ll.bc
module-hash-strtab.ll
module_hash.ll [ThinLTO] Fix ThinLTOCodegenerator to export llvm.used symbols 2019-04-17 17:38:09 +00:00
multi-module.ll Add support for multi-module bitcode files to llvm-dis 2019-11-14 10:40:41 -08:00
null-type.ll
null-type.ll.bc
objectsize-upgrade-7.0.ll IR: Add immarg attribute 2019-03-12 21:02:54 +00:00
objectsize-upgrade-7.0.ll.bc Fix auto-upgrade for the new parameter to llvm.objectsize 2019-02-12 21:55:38 +00:00
old-aliases.ll
old-aliases.ll.bc
operand-bundles-bc-analyzer.ll Introduce a "gc-live" bundle for the gc arguments of a statepoint 2020-06-03 15:00:24 -07:00
operand-bundles.ll
padding.test
pr18704.ll [BitcodeReader] Use tighter upper bound to validate forward references. 2019-07-14 12:35:50 +00:00
pr18704.ll.bc
ptest-new.ll
ptest-old.ll
select.ll
shuffle.ll
source-filename.test
ssse3_palignr.ll
standardCIntrinsic.3.2.ll
standardCIntrinsic.3.2.ll.bc
stream-types.c Reland: [Remarks] Add an LLVM-bitstream-based remark serializer 2019-07-31 00:13:51 +00:00
stream-types.c.ast [bcanalyzer] Recognize more stream types 2018-04-21 23:52:04 +00:00
stream-types.c.ast.incomplete [bcanalyzer] Recognize more stream types 2018-04-21 23:52:04 +00:00
stream-types.c.dia [bcanalyzer] Recognize more stream types 2018-04-21 23:52:04 +00:00
stream-types.c.dia.incomplete [bcanalyzer] Recognize more stream types 2018-04-21 23:52:04 +00:00
stream-types.c.opt.bitstream Reland: [Remarks] Add an LLVM-bitstream-based remark serializer 2019-07-31 00:13:51 +00:00
summary_version.ll Revert "Restore "[WPD/LowerTypeTests] Delay lowering/removal of type tests until after ICP"" 2020-03-02 14:02:13 -08:00
tailcall.ll
terminatorInstructions.3.2.ll
terminatorInstructions.3.2.ll.bc
thinlto-alias.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-alias2.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-alias3.ll IR: Teach GlobalIndirectSymbol::getBaseObject() to handle more kinds of expressions. 2019-07-24 22:23:05 +00:00
thinlto-asm-noimport.ll
thinlto-deadstrip-flag.ll [ThinLTO] Import readonly vars with refs 2019-11-07 15:13:35 +03:00
thinlto-empty-summary-section.ll
thinlto-function-summary-callgraph-cast.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-function-summary-callgraph-pgo.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-function-summary-callgraph-profile-summary.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-function-summary-callgraph-relbf.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-function-summary-callgraph-sample-profile-summary.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-function-summary-callgraph.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-function-summary-functionattrs.ll
thinlto-function-summary-originalnames.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-function-summary-refgraph.ll [ThinLTO] Always import constants 2020-01-15 19:29:01 +03:00
thinlto-function-summary.ll [ThinLTO] Compute the basic block count across modules. 2020-05-28 10:33:05 -07:00
thinlto-summary-globalvar.ll
thinlto-summary-linkage-types.ll
thinlto-summary-local-5.0.ll [Bitcode] Update CHECK-DAG usage in tests 2019-07-03 17:31:43 +00:00
thinlto-summary-local-5.0.ll.bc
thinlto-summary-section.ll
thinlto-synthetic-count-flag.ll [ThinLTO] Import readonly vars with refs 2019-11-07 15:13:35 +03:00
thinlto-type-tests.ll [ThinLTO] Auto-hide prevailing linkonce_odr only when all copies eligible 2019-05-10 20:08:24 +00:00
thinlto-type-vcalls.ll [ThinLTO] Auto-hide prevailing linkonce_odr only when all copies eligible 2019-05-10 20:08:24 +00:00
thinlto-unused-type-tests.ll
upgrade-arc-runtime-calls-bitcast.bc [ObjC][ARC] Check whether the return and parameter types of the old and 2019-10-24 13:08:50 -07:00
upgrade-arc-runtime-calls-bitcast.ll [ObjC][ARC] Check whether the return and parameter types of the old and 2019-10-24 13:08:50 -07:00
upgrade-arc-runtime-calls-new.bc [AutoUpgrader] Make ArcRuntime Autoupgrader more conservative 2019-08-13 17:52:21 +00:00
upgrade-arc-runtime-calls.bc Do not call replaceAllUsesWith to upgrade calls to ARC runtime functions 2019-08-13 01:23:06 +00:00
upgrade-arc-runtime-calls.ll [AutoUpgrader] Make ArcRuntime Autoupgrader more conservative 2019-08-13 17:52:21 +00:00
upgrade-clang-arc-use.ll [ObjC][ARC] Upgrade calls to ARC runtime functions to intrinsic calls if 2019-08-08 16:59:31 +00:00
upgrade-clang-arc-use.ll.bc [Bitcode] Fix bitcode compatibility issue with clang.arc.use intrinsic 2019-03-08 05:27:53 +00:00
upgrade-datalayout.ll Add AutoUpgrade function to add new address space datalayout string to existing datalayouts. 2019-09-18 22:15:58 +00:00
upgrade-datalayout2.ll Add AutoUpgrade function to add new address space datalayout string to existing datalayouts. 2019-09-18 22:15:58 +00:00
upgrade-datalayout3.ll Add AutoUpgrade function to add new address space datalayout string to existing datalayouts. 2019-09-18 22:15:58 +00:00
upgrade-dbg-checksum.ll
upgrade-dbg-checksum.ll.bc
upgrade-dbg-value.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
upgrade-dbg-value.ll.bc
upgrade-debug-info-for-profiling.ll
upgrade-debug-info-for-profiling.ll.bc
upgrade-frame-pointer.ll Ignore "no-frame-pointer-elim" and "no-frame-pointer-elim-non-leaf" in favor of "frame-pointer" 2019-12-30 09:46:19 -08:00
upgrade-garbage-collection-for-objc.ll Fix conflict value for metadata "Objective-C Garbage Collection" in the mix of swift and Objective-C bitcode 2020-03-11 13:26:06 -07:00
upgrade-garbage-collection-for-swift.ll Fix conflict value for metadata "Objective-C Garbage Collection" in the mix of swift and Objective-C bitcode 2020-03-11 13:26:06 -07:00
upgrade-global-ctors.ll [IR] Disallow llvm.global_ctors and llvm.global_dtors of the 2-field form in textual format 2019-05-15 02:35:32 +00:00
upgrade-global-ctors.ll.bc
upgrade-global-dtors.ll [IR] Disallow llvm.global_ctors and llvm.global_dtors of the 2-field form in textual format 2019-05-15 02:35:32 +00:00
upgrade-global-dtors.ll.bc [IR] Disallow llvm.global_ctors and llvm.global_dtors of the 2-field form in textual format 2019-05-15 02:35:32 +00:00
upgrade-importedentity.ll
upgrade-importedentity.ll.bc
upgrade-invariant-group-barrier.ll Rename invariant.group.barrier to launder.invariant.group 2018-05-03 11:03:01 +00:00
upgrade-linker-options.ll
upgrade-loop-metadata.ll
upgrade-loop-metadata.ll.bc
upgrade-memory-intrinsics.ll [Intrinsics] Add a 'NoAlias' intrinsic property; annotate llvm.memcpy 2019-08-14 08:33:07 +00:00
upgrade-module-flag.ll
upgrade-mrr-runtime-calls.bc Do not call replaceAllUsesWith to upgrade calls to ARC runtime functions 2019-08-13 01:23:06 +00:00
upgrade-objcretainrelease-asm.ll [IR] Upgrade comment token in objc retain release marker for asm call 2018-04-17 04:02:24 +00:00
upgrade-objcretainrelease-asm.ll.bc [IR] Upgrade comment token in objc retain release marker for asm call 2018-04-17 04:02:24 +00:00
upgrade-objcretainrelease.ll [ObjC][ARC] Convert the retainRV marker that is passed as a named 2019-04-10 06:20:20 +00:00
upgrade-objcretainrelease.ll.bc [IR] Upgrade comment token in objc retain release marker 2018-04-05 02:44:46 +00:00
upgrade-pointer-address-space.ll [Bitcode] Update CHECK-DAG usage in tests 2019-07-03 17:31:43 +00:00
upgrade-pointer-address-space.ll.bc
upgrade-section-name.ll
upgrade-subprogram-this.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
upgrade-subprogram-this.ll.bc
upgrade-subprogram.ll
upgrade-subprogram.ll.bc
upgrade-tbaa.ll Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
upgrade-vecreduce-intrinsics.ll Change semantics of fadd/fmul vector reductions. 2019-06-11 08:22:10 +00:00
upgrade-vecreduce-intrinsics.ll.bc Change semantics of fadd/fmul vector reductions. 2019-06-11 08:22:10 +00:00
use-list-order.ll
use-list-order2.ll
value-with-long-name.ll
variableArgumentIntrinsic.3.2.ll
variableArgumentIntrinsic.3.2.ll.bc
vector-pcs.ll [AArch64] Add parsing of aarch64_vector_pcs attribute. 2018-09-12 08:54:06 +00:00
vectorInstructions.3.2.ll
vectorInstructions.3.2.ll.bc
visibility-styles.3.2.ll
visibility-styles.3.2.ll.bc
vscale-round-trip.ll [SVE] Pass Scalable argument to VectorType::get in Bitcode Reader 2020-01-22 12:29:25 -08:00
vst-forward-declaration.ll
weak-cmpxchg-upgrade.ll
weak-cmpxchg-upgrade.ll.bc
weak-macho-3.5.ll
weak-macho-3.5.ll.bc