1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00
llvm-mirror/test/Assembler
Nikita Popov 929097793e [AsmParser] Unify parsing of attributes
Continuing on from D105780, this should be the last major bit of
attribute cleanup. Currently, LLParser implements attribute parsing
for functions, parameters and returns separately, enumerating all
supported (and unsupported) attributes each time. This patch
extracts the common parsing logic, and performs a check afterwards
whether the attribute is valid in the given position. Parameters
and returns are handled together, while function attributes need
slightly different logic to support attribute groups.

Differential Revision: https://reviews.llvm.org/D105938
2021-07-15 17:51:11 +02:00
..
2002-03-08-NameCollision2.ll
2002-03-08-NameCollision.ll
2002-04-07-HexFloatConstants.ll
2002-04-07-InfConstant.ll
2002-04-29-NameBinding.ll
2002-05-02-InvalidForwardRef.ll
2002-07-14-OpaqueType.ll
2002-07-25-QuoteInString.ll
2002-07-25-ReturnPtrFunction.ll
2002-07-31-SlashInString.ll
2002-08-15-CastAmbiguity.ll
2002-08-15-ConstantExprProblem.ll
2002-08-15-UnresolvedGlobalReference.ll
2002-08-16-ConstExprInlined.ll
2002-08-19-BytecodeReader.ll
2002-08-22-DominanceProblem.ll
2002-10-08-LargeArrayPerformance.ll
2002-10-13-ConstantEncodingProblem.ll
2002-12-15-GlobalResolve.ll
2003-01-30-UnsignedString.ll
2003-04-15-ConstantInitAssertion.ll
2003-04-25-UnresolvedGlobalReference.ll
2003-05-03-BytecodeReaderProblem.ll
2003-05-12-MinIntProblem.ll
2003-05-15-AssemblerProblem.ll
2003-05-15-SwitchBug.ll
2003-05-21-ConstantShiftExpr.ll
2003-05-21-EmptyStructTest.ll
2003-05-21-MalformedShiftCrash.ll
2003-05-21-MalformedStructCrash.ll
2003-08-20-ConstantExprGEP-Fold.ll
2003-08-21-ConstantExprCast-Fold.ll
2003-11-05-ConstantExprShift.ll
2003-11-11-ImplicitRename.ll
2003-11-12-ConstantExprCast.ll
2003-11-24-SymbolTableCrash.ll
2004-01-11-getelementptrfolding.ll
2004-01-20-MaxLongLong.ll
2004-02-01-NegativeZero.ll
2004-02-27-SelfUseAssertError.ll
2004-03-07-FunctionAddressAlignment.ll
2004-03-30-UnclosedFunctionCrash.ll
2004-04-04-GetElementPtrIndexTypes.ll
2004-06-07-VerifierBug.ll
2004-10-22-BCWriterUndefBug.ll
2004-11-28-InvalidTypeCrash.ll
2005-01-03-FPConstantDisassembly.ll
2005-01-31-CallingAggregateFunction.ll
2005-05-05-OpaqueUndefValues.ll
2005-12-21-ZeroInitVector.ll
2006-09-28-CrashOnInvalid.ll
2006-12-09-Cast-To-Bool.ll
2007-01-02-Undefined-Arg-Type.ll
2007-01-05-Cmp-ConstExpr.ll
2007-01-16-CrashOnBadCast2.ll
2007-01-16-CrashOnBadCast.ll
2007-03-18-InvalidNumberedVar.ll
2007-03-19-NegValue.ll
2007-04-20-AlignedLoad.ll
2007-04-20-AlignedStore.ll
2007-04-25-AssemblerFoldExternWeak.ll
2007-05-21-Escape.ll
2007-07-19-ParamAttrAmbiguity.ll
2007-08-06-AliasInvalid.ll
2007-09-10-AliasFwdRef.ll
2007-09-29-GC.ll
2007-11-26-AttributeOverload.ll
2007-12-11-AddressSpaces.ll
2008-01-11-VarargAttrs.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
2008-02-18-IntPointerCrash.ll
2008-07-10-APInt.ll
2008-09-02-FunctionNotes2.ll
2008-09-02-FunctionNotes.ll
2008-09-29-RetAttr.ll
2008-10-14-QuoteInName.ll
2009-02-01-UnnamedForwardRef.ll
2009-02-28-CastOpc.ll
2009-02-28-StripOpaqueName.ll
2009-03-24-ZextConstantExpr.ll
2009-07-24-ZeroArgGEP.ll
2010-02-05-FunctionLocalMetadataBecomesNull.ll
aarch64-intrinsics-attributes.ll [AArch64] Make target intrinsics DefaultAttrIntrinsics. 2021-01-18 17:32:15 +00:00
addrspacecast-alias.ll
aggregate-constant-values.ll
aggregate-return-single-value.ll
alias-redefinition.ll
alias-use-list-order.ll
align-inst-alloca.ll
align-inst-load.ll
align-inst-store.ll
align-inst.ll
align-param-attr-error0.ll
align-param-attr-error1.ll
align-param-attr-error2.ll
align-param-attr-format.ll
alignstack.ll
alloca-addrspace0.ll
alloca-addrspace-elems.ll
alloca-addrspace-parse-error-0.ll
alloca-addrspace-parse-error-1.ll
alloca-invalid-type-2.ll
alloca-invalid-type.ll
alloca-size-one.ll
anon-functions.ll
asm-path-writer.ll
atomic.ll
atomicrmw.ll [OpaquePtr] Make atomicrmw work with opaque pointers 2021-05-25 20:16:21 -07:00
attribute-builtin.ll
auto_upgrade_intrinsics.ll Intrinsic::getName: require a Module argument 2021-06-14 14:52:29 +02:00
auto_upgrade_nvvm_intrinsics.ll
autoupgrade-invalid-mem-intrinsics.ll
autoupgrade-thread-pointer.ll
bcwrap.ll
bfloat.ll
block-labels.ll
br-single-destination.ll IR: Fix use-list-order round-tripping for br 2021-06-28 12:53:36 -07:00
byref-parse-error-0.ll
byref-parse-error-1.ll
byref-parse-error-2.ll
byref-parse-error-3.ll
byref-parse-error-4.ll
byref-parse-error-5.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
byref-parse-error-6.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
byref-parse-error-7.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
byref-parse-error-8.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
byref-parse-error-9.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
byref-parse-error-10.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
byval-parse-error0.ll OpaquePtr: Make byval/sret types mandatory 2020-11-20 21:23:33 -05:00
byval-type-attr.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
call-arg-is-callee.ll IR: Fix use-list-order round-tripping for call and invoke 2021-06-23 12:04:19 -07:00
call-invalid-1.ll
call-nonzero-program-addrspace-2.ll
call-nonzero-program-addrspace.ll
cmpxchg-ordering-2.ll [Verifier] Move some atomicrmw/cmpxchg checks to instruction creation 2021-05-21 13:41:17 -07:00
cmpxchg-ordering-3.ll [Verifier] Move some atomicrmw/cmpxchg checks to instruction creation 2021-05-21 13:41:17 -07:00
cmpxchg-ordering-4.ll [Verifier] Move some atomicrmw/cmpxchg checks to instruction creation 2021-05-21 13:41:17 -07:00
cmpxchg-ordering.ll [Verifier] Move some atomicrmw/cmpxchg checks to instruction creation 2021-05-21 13:41:17 -07:00
comment.ll
ConstantExprFold.ll [Assembler] Fix global icmp test 2021-03-08 17:26:49 +01:00
ConstantExprFoldCast.ll
ConstantExprFoldSelect.ll
ConstantExprNoFold.ll
datalayout-alloca-addrspace.ll
datalayout-invalid-function-ptr-alignment.ll
datalayout-invalid-stack-natural-alignment.ll
datalayout-program-addrspace.ll
dbg-checksum.ll
debug-info-source-invalid.ll
debug-info-source.ll
debug-info.ll
debug-label-bitcode.ll
debug-variant-discriminator.ll
DICommonBlock.ll
dicompileunit.ll
dicompositetype-members.ll
DIDefaultTemplateParam.ll
DIEnumerator.ll
DIEnumeratorBig.ll
diexpression.ll
difile-escaped-chars.ll
diglobalvariable.ll
DIGlobalVariableExpression.ll
diimportedentity.ll
dilexicalblock.ll
dilocalvariable-arg-large.ll
dilocalvariable.ll
dilocation.ll
DIMacroFile.ll
dimodule.ll [DebugInfo] Support Fortran 'use <external module>' statement. 2020-12-18 13:10:57 -05:00
dinamespace.ll
diobjcproperty.ll
distinct-mdnode.ll
disubprogram.ll
disubrange-empty-array.ll
disubroutinetype.ll
ditemplateparameter.ll
ditype-large-values.ll
dllimport-dsolocal-diag.ll
drop-debug-info-nonzero-alloca.ll [IR][Verifier] Relax restriction on alloca address spaces 2021-05-21 11:52:45 +02:00
drop-debug-info.ll
export-symbol-anonymous-class.ll
externally-initialized.ll
extractvalue-invalid-idx.ll
extractvalue-no-idx.ll
fast-math-flags.ll
flags.ll
generic-debug-node.ll
getelementptr_invalid_ptr.ll
getelementptr_struct.ll
getelementptr_vec_ce2.ll
getelementptr_vec_ce.ll
getelementptr_vec_idx1.ll
getelementptr_vec_idx2.ll
getelementptr_vec_idx3.ll
getelementptr_vec_idx4.ll
getelementptr_vec_struct.ll
getelementptr_vscale_struct.ll
getelementptr.ll
getInt.ll
global-addrspace-forwardref.ll
globalvariable-attributes.ll
gv-invalid-type.ll
half-constprop.ll
half-conv.ll
half.ll
huge-array.ll
ifunc-asm.ll
ifunc-dsolocal.ll
ifunc-use-list-order.ll
immarg-param-attribute.ll
inalloca-parse-error0.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
inalloca.ll
incorrect-tdep-attrs-parsing.ll
inline-asm-clobber.ll
insertextractvalue.ll
insertvalue-invalid-idx.ll
insertvalue-invalid-type-1.ll
insertvalue-invalid-type.ll
internal-hidden-alias.ll
internal-hidden-function.ll
internal-hidden-variable.ll
internal-protected-alias.ll
internal-protected-function.ll
internal-protected-variable.ll
invalid_cast2.ll
invalid_cast3.ll
invalid_cast4.ll
invalid_cast.ll
invalid-alias-mismatched-explicit-type.ll [LLParser] Print mismatched types in error message 2021-04-21 13:10:37 -07:00
invalid-arg-num-1.ll
invalid-arg-num-2.ll
invalid-arg-num-3.ll
invalid-atomicrmw-add-must-be-integer-type.ll
invalid-atomicrmw-fadd-must-be-fp-type.ll
invalid-atomicrmw-fsub-must-be-fp-type.ll
invalid-atomicrmw-xchg-must-be-integer-or-fp-type.ll
invalid-attrgrp.ll
invalid-block-label-num.ll
invalid-byval-type1.ll
invalid-byval-type2.ll
invalid-byval-type3.ll [OpaquePtr] Verify Opaque pointer in function parameter 2021-06-15 14:57:48 -07:00
invalid-comdat2.ll
invalid-comdat.ll
invalid-datalayout1.ll
invalid-datalayout2.ll
invalid-datalayout3.ll
invalid-datalayout4.ll
invalid-datalayout5.ll
invalid-datalayout6.ll
invalid-datalayout7.ll
invalid-datalayout8.ll
invalid-datalayout9.ll
invalid-datalayout10.ll
invalid-datalayout11.ll
invalid-datalayout12.ll
invalid-datalayout13.ll
invalid-datalayout14.ll
invalid-datalayout15.ll
invalid-datalayout16.ll
invalid-datalayout17.ll
invalid-datalayout18.ll
invalid-datalayout19.ll
invalid-datalayout20.ll
invalid-datalayout21.ll
invalid-datalayout22.ll
invalid-datalayout23.ll
invalid-datalayout24.ll
invalid-datalayout-alloca-addrspace.ll
invalid-datalayout-globals-addrspace.ll Add a default address space for globals to DataLayout 2020-11-20 15:46:52 +00:00
invalid-datalayout-program-addrspace.ll
invalid-debug-info-version.ll
invalid-dicompileunit-emissionkind-bad.ll
invalid-dicompileunit-language-bad.ll
invalid-dicompileunit-language-overflow.ll
invalid-dicompileunit-missing-language.ll
invalid-dicompileunit-null-file.ll
invalid-dicompileunit-uniqued.ll
invalid-dicompositetype-missing-tag.ll
invalid-diderivedtype-missing-basetype.ll
invalid-diderivedtype-missing-tag.ll
invalid-dienumerator-missing-name.ll
invalid-dienumerator-missing-value.ll
invalid-diexpression-large.ll
invalid-diexpression-verify.ll
invalid-difile-missing-directory.ll
invalid-difile-missing-filename.ll
invalid-diglobalvariable-empty-name.ll
invalid-diglobalvariable-missing-name.ll
invalid-diimportedentity-missing-scope.ll
invalid-diimportedentity-missing-tag.ll
invalid-dilexicalblock-missing-scope.ll
invalid-dilexicalblock-null-scope.ll
invalid-dilexicalblockfile-missing-discriminator.ll
invalid-dilexicalblockfile-missing-scope.ll
invalid-dilexicalblockfile-null-scope.ll
invalid-dilocalvariable-arg-large.ll
invalid-dilocalvariable-arg-negative.ll
invalid-dilocalvariable-missing-scope.ll
invalid-dilocalvariable-null-scope.ll
invalid-dilocation-field-bad.ll
invalid-dilocation-field-twice.ll
invalid-dilocation-missing-scope-2.ll
invalid-dilocation-missing-scope.ll
invalid-dilocation-null-scope.ll
invalid-dilocation-overflow-column.ll
invalid-dilocation-overflow-line.ll
invalid-dinamespace-missing-namespace.ll
invalid-disubprogram-uniqued-definition.ll
invalid-disubrange-count-large.ll
invalid-disubrange-count-missing.ll
invalid-disubrange-count-negative.ll
invalid-disubrange-count-node.ll
invalid-disubrange-lowerBound-max.ll
invalid-disubrange-lowerBound-min.ll
invalid-disubroutinetype-missing-types.ll
invalid-ditemplatetypeparameter-missing-type.ll
invalid-ditemplatevalueparameter-missing-value.ll
invalid-fp80hex.ll
invalid-fwdref1.ll
invalid-fwdref2.ll
invalid-generic-debug-node-tag-bad.ll
invalid-generic-debug-node-tag-missing.ll
invalid-generic-debug-node-tag-overflow.ll
invalid-generic-debug-node-tag-wrong-type.ll
invalid-gep-mismatched-explicit-type.ll [LLParser] Print mismatched types in error message 2021-04-21 13:10:37 -07:00
invalid-gep-missing-explicit-type.ll
invalid-hexint.ll
invalid-immarg2.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
invalid-immarg3.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
invalid-immarg.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
invalid-inline-constraint.ll
invalid-inttype.ll
invalid-label.ll
invalid-landingpad.ll
invalid-load-mismatched-explicit-type.ll [LLParser] Print mismatched types in error message 2021-04-21 13:10:37 -07:00
invalid-load-missing-explicit-type.ll
invalid-mdnode-badref.ll
invalid-mdnode-vector2.ll
invalid-mdnode-vector.ll
invalid-metadata-attachment-has-type.ll
invalid-metadata-function-local-attachments.ll
invalid-metadata-function-local-complex-1.ll
invalid-metadata-function-local-complex-2.ll
invalid-metadata-function-local-complex-3.ll
invalid-metadata-has-type.ll
invalid-name2.ll
invalid-name.ll
invalid-opaque-ptr-addrspace.ll OpaquePtr: Reject 'ptr*' again when parsing textual IR 2021-06-25 15:18:44 -07:00
invalid-opaque-ptr-double-addrspace.ll OpaquePtr: Support i32** with --force-opaque-pointers 2021-06-29 14:10:29 -07:00
invalid-opaque-ptr.ll OpaquePtr: Reject 'ptr*' again when parsing textual IR 2021-06-25 15:18:44 -07:00
invalid-safestack-param.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
invalid-safestack-return.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
invalid-specialized-mdnode.ll
invalid-untyped-metadata.ll
invalid-uselistorder_bb-missing-bb.ll
invalid-uselistorder_bb-missing-body.ll
invalid-uselistorder_bb-missing-func.ll
invalid-uselistorder_bb-not-bb.ll
invalid-uselistorder_bb-not-func.ll
invalid-uselistorder_bb-numbered.ll
invalid-uselistorder-function-between-blocks.ll
invalid-uselistorder-function-missing-named.ll
invalid-uselistorder-function-missing-numbered.ll
invalid-uselistorder-global-missing.ll
invalid-uselistorder-indexes-duplicated.ll
invalid-uselistorder-indexes-empty.ll
invalid-uselistorder-indexes-one.ll
invalid-uselistorder-indexes-ordered.ll
invalid-uselistorder-indexes-range.ll
invalid-uselistorder-indexes-toofew.ll
invalid-uselistorder-indexes-toomany.ll
invalid-uselistorder-type.ll
invalid-vecreduce.ll [llvm][mlir] Promote the experimental reduction intrinsics to be first class intrinsics. 2020-10-07 10:36:44 -07:00
invoke-nonzero-program-addrspace.ll
large-comdat.ll
local-unnamed-addr.ll
max-inttype.ll
metadata-decl.ll
metadata-function-local.ll
metadata-null-operands.ll
metadata-use-uselistorder.ll Handle value uses wrapped in metadata for the use-list order 2020-10-20 20:05:59 +02:00
metadata.ll
missing-tbaa.ll
multi-mod-disassemble.ll
multi-summary-disassemble.ll [ThinLTO] Add Visibility bits to GlobalValueSummary::GVFlags 2021-01-27 10:43:51 -08:00
MultipleReturnValueType.ll
mustprogress-parse-error-0.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
mustprogress-parse-error-1.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
mustprogress-parse-error-2.ll [IR] Adds mustprogress as a LLVM IR attribute 2020-10-20 03:09:57 -04:00
musttail-invalid-1.ll
musttail-invalid-2.ll
musttail.ll
named-metadata.ll
no-mdstring-upgrades.ll
non-global-value-max-name-size.ll Fix non-global-value-max-name-size not considered by LLParser 2021-05-27 04:20:03 +00:00
numbered-values.ll
opaque-ptr-cmpxchg.ll [OpaquePtr] Make cmpxchg work with opaque pointers 2021-05-19 12:44:10 -07:00
opaque-ptr.ll [OpaquePtr][BitcodeWriter] Handle attributes with types 2021-06-29 14:47:29 -07:00
private-hidden-alias.ll
private-hidden-function.ll
private-hidden-variable.ll
private-protected-alias.ll
private-protected-function.ll
private-protected-variable.ll
remangle-intrinsic-opaque-ptr.ll [OpaquePtr] Support opaque pointers in intrinsic type check 2021-07-01 18:26:41 +02:00
remangle.ll [remangleIntrinsicFunction] Detect and resolve name clash 2021-07-13 11:21:12 +02:00
select.ll
short-hexpair.ll
source-filename-backslash.ll
source-filename.ll
sret-parse-error0.ll OpaquePtr: Make byval/sret types mandatory 2020-11-20 21:23:33 -05:00
sret-type-attr.ll OpaquePtr: Update more tests to use typed sret 2020-11-20 20:08:43 -05:00
summary-flags2.ll
summary-flags.ll [LTO] Perform DSOLocal propagation in combined index 2021-02-12 22:58:26 -08:00
thinlto-bad-summary1.ll
thinlto-bad-summary2.ll
thinlto-bad-summary3.ll
thinlto-blockcount-summary.ll
thinlto-flags-summary.ll
thinlto-multiple-summaries-for-guid.ll [ThinLTO] Add Visibility bits to GlobalValueSummary::GVFlags 2021-01-27 10:43:51 -08:00
thinlto-summary-visibility.ll [ThinLTO] Add Visibility bits to GlobalValueSummary::GVFlags 2021-01-27 10:43:51 -08:00
thinlto-summary.ll [ThinLTO] Add Visibility bits to GlobalValueSummary::GVFlags 2021-01-27 10:43:51 -08:00
thinlto-vtable-summary.ll [ThinLTO] Add Visibility bits to GlobalValueSummary::GVFlags 2021-01-27 10:43:51 -08:00
tls-models.ll
token.ll
unnamed-addr.ll
unnamed-alias.ll
unnamed-comdat.ll
unnamed.ll
unsized-recursive-type.ll
uselistorder_bb.ll
uselistorder_global.ll [AsmWriter] Properly handle uselistorder for global symbols 2021-06-28 23:15:32 +02:00
uselistorder.ll
vbool-cmp.ll
vector-cmp.ll
vector-select.ll
vector-shift.ll
x86_intrcc.ll OpaquePtr: Require byval on x86_intrcc parameter 0 2020-12-14 16:34:37 -05:00
x86mmx.ll