1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/test/Verifier
Nikita Popov 168546a427 [Verifier] Check byval/etc type when comparing ABI attributes
For musttail calls, ABI attributes between the function and the
musttail call must match. The current check discards the type of
type attributes like byval, which means that it will consider
byval(i32) and byval(i64) (or similar) as compatible.

I assume this is a leftover from before these attributes had a
type argument. Ran into this while trying to tighten an assertion
in AttrBuilder.

Differential Revision: https://reviews.llvm.org/D105841
2021-07-20 20:19:47 +02:00
..
AMDGPU AMDGPU: Fix missing immarg on buffer.atomic.fadd intrinsic 2020-06-05 14:34:07 -04:00
ARM
Mips
SystemZ
2002-04-13-RetTypes.ll
2002-11-05-GetelementptrPointers.ll
2004-05-21-SwitchConstantMismatch.ll
2006-07-11-StoreStruct.ll
2006-10-15-AddrLabel.ll
2006-12-12-IntrinsicDefine.ll
2007-12-21-InvokeParamAttrs.ll
2008-01-11-VarargAttrs.ll OpaquePtr: Bulk update tests to use typed sret 2020-11-20 17:58:26 -05:00
2008-03-01-AllocaSized.ll
2008-11-15-RetVoid.ll
2009-05-29-InvokeResult1.ll
2009-05-29-InvokeResult2.ll
2009-05-29-InvokeResult3.ll
2010-08-07-PointerIntrinsic.ll
alias.ll
align-md.ll
align.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
alloc-size-failedparse.ll
allocsize.ll
AmbiguousPhi.ll
amdgpu-cc.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
annotation-metadata.ll Add !annotation metadata and remarks pass. 2020-11-13 13:24:10 +00:00
array_allocated.ll [DebugInfo] Support for DW_AT_associated and DW_AT_allocated. 2020-07-20 19:54:35 +05:30
array_associated.ll [DebugInfo] Support for DW_AT_associated and DW_AT_allocated. 2020-07-20 19:54:35 +05:30
array_dataLocation.ll [DebugInfo] support for DW_AT_data_location in llvm 2020-05-15 11:33:17 +05:30
array_rank.ll [DebugInfo] Support for DWARF attribute DW_AT_rank 2020-10-10 17:51:12 +05:30
assume-bundles.ll Reland [AssumeBundles] Use operand bundles to encode alignment assumptions 2020-09-12 15:36:06 +02:00
atomics.ll
bitcast-address-space-nested-global-cycle.ll
bitcast-address-space-nested-global.ll
bitcast-address-space-through-constant-inttoptr-inside-gep-instruction.ll
bitcast-address-space-through-constant-inttoptr.ll
bitcast-address-space-through-gep-2.ll
bitcast-address-space-through-gep.ll
bitcast-address-space-through-inttoptr.ll
bitcast-address-spaces.ll
bitcast-alias-address-space.ll
bitcast-pointer-vector-neg.ll
bitcast-vector-pointer-as-neg.ll
bitcast-vector-pointer-as.ll
bitcast-vector-pointer-neg.ll
bitcast-vector-pointer-pos.ll
blockbyref.ll
bswap.ll
byref.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
byval-1.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
byval-4.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
callbr.ll Change the INLINEASM_BR MachineInstr to be a non-terminating instruction. 2020-07-01 12:51:50 -04:00
callsite-dbgloc.ll
cc-flags.ll
comdat2.ll
comdat3.ll
comdat-decl1.ll
comdat-decl2.ll
comdat.ll
commandline-meta1.ll
commandline-meta2.ll
commandline-meta3.ll
commandline-meta4.ll
cttz-undef-arg.ll
dbg-difile-crash.ll
dbg-invalid-compileunit.ll
dbg-invalid-named-metadata.ll
dbg-invalid-retaintypes.ll
dbg-invalid-vector.ll
dbg-line-without-file.ll
dbg-null-retained-type.ll
dbg-orphaned-compileunit.ll
dbg-typerefs.ll
dbg.ll
deoptimize-intrinsic.ll
dereferenceable-md-inttoptr.ll
dereferenceable-md.ll
di-subroutine-localvar.ll
diderivedtype-address-space-atomic-type.ll
diderivedtype-address-space-const-type.ll
diderivedtype-address-space-friend.ll
diderivedtype-address-space-inheritance.ll
diderivedtype-address-space-member.ll
diderivedtype-address-space-ptr-to-member-type.ll
diderivedtype-address-space-restrict-type.ll
diderivedtype-address-space-rvalue-reference-type.ll
diderivedtype-address-space-typedef.ll
diderivedtype-address-space-volatile-type.ll
diexpression-dwarf-entry-value.ll
diexpression-entry-value-llvm-ir.ll
diexpression-entry-value.ll
diexpression-swap.ll
diexpression-valid-entry-value.ll Remove overzealous verifier check on DW_OP_LLVM_entry_value and improve the documentation 2021-02-04 10:58:35 -08:00
DIFile.ll
digenericsubrange-count-upperBound.ll [DebugInfo] Support for DW_TAG_generic_subrange 2020-10-29 01:34:15 +05:30
digenericsubrange-missing-stride.ll [DebugInfo] Support for DW_TAG_generic_subrange 2020-10-29 01:34:15 +05:30
digenericsubrange-missing-upperBound.ll [DebugInfo] Support for DW_TAG_generic_subrange 2020-10-29 01:34:15 +05:30
diglobalvariable.ll
dilocation-in-wrong-place.ll [Verifier] Constrain where DILocations may be nested 2020-05-04 14:02:43 -07:00
DILocation-parents.ll
DILocation-scope.ll
disubprogram-name-match-only.ll
DISubprogram.ll
disubrange-count-upperBound.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
disubrange-missing-upperBound.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
dominates.ll
element-wise-atomic-memory-intrinsics.ll
elementtype.ll [BPF] Use elementtype attribute for preserve.array/struct.index intrinsics 2021-07-17 11:09:18 +02:00
extract-vector-mismatched-element-types.ll [SelectionDAG] Add llvm.vector.{extract,insert} intrinsics 2020-12-09 11:08:41 +00:00
fnarg-debuginfo.ll
fnarg-nodebug.ll
force-opaque-ptr.ll [Verifier] Require same signature for intrinsic calls 2021-07-16 18:33:16 +02:00
fp-intrinsics.ll [IR] Make nosync, nofree and willreturn default for intrinsics. 2020-10-20 11:57:19 +02:00
fpmath.ll
fragment.ll
frameescape.ll
func-dbg.ll
function-metadata-bad.ll
function-metadata-good.ll
gc_relocate_addrspace.ll
gc_relocate_operand.ll
gc_relocate_return.ll
gcread-ptrptr.ll
gcroot.ll
gcwrite-ptrptr.ll
get-active-lane-mask.ll [ARM] Fixup of a few test cases. NFC. 2020-09-09 11:14:44 +01:00
global-ctors-2.ll
global-ctors.ll
guard-intrinsic.ll
ident-meta1.ll
ident-meta2.ll
ident-meta3.ll
ident-meta4.ll
immarg-param-attribute-invalid.ll
inalloca1.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
inalloca2.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
inalloca3.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
inalloca-vararg.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
insert-extract-intrinsics-invalid.ll [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics 2021-06-23 10:33:22 +00:00
insert-vector-mismatched-element-types.ll [SelectionDAG] Add llvm.vector.{extract,insert} intrinsics 2020-12-09 11:08:41 +00:00
intrinsic-addr-taken.ll [Verifier] Extend address taken check for unknown intrinsics 2021-07-15 23:16:14 +02:00
intrinsic-arg-overloading-struct-ret.ll
intrinsic-bad-arg-type.ll
intrinsic-immarg.ll
invalid-disubrange-count-node.ll [DebugInfo] Upgrade DISubragne::count to accept DIExpression also 2021-03-30 09:16:55 +05:30
invalid-disubrange-lowerBound.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
invalid-disubrange-stride.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
invalid-disubrange-upperBound.ll [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays 2020-05-28 13:46:41 +05:30
invalid-eh.ll
invalid-frame-pointer-attr-empty.ll
invalid-frame-pointer-attr-no-value.ll
invalid-frame-pointer-attr.ll
invalid-patchable-function-entry.ll
invalid-statepoint.ll [Statepoint] Remove code related to inline operand bundles 2020-08-14 20:29:41 -07:00
invalid-strbool-attr.ll Normalize interaction with boolean attributes 2021-04-17 08:17:33 +02:00
invalid-warn-stack-size.ll [IR] convert warn-stack-size from module flag to fn attr 2021-06-21 15:09:25 -07:00
invoke.ll
jumptable.ll
llvm.compiler_used-invalid-type.ll
llvm.dbg.declare-address.ll
llvm.dbg.declare-expression.ll
llvm.dbg.declare-variable.ll
llvm.dbg.intrinsic-dbg-attachment.ll
llvm.dbg.value-expression.ll
llvm.dbg.value-value.ll
llvm.dbg.value-variable.ll
llvm.loop-cu-strip-indirect.ll Support stripping indirectly referenced DILocations from !llvm.loop metadata 2021-05-27 13:23:33 -07:00
llvm.loop-cu-strip.ll Have stripDebugInfo() also strip !llvm.loop annotations from all 2021-02-05 17:22:41 -08:00
llvm.loop.cu.ll
llvm.loop.ll
llvm.used-invalid-init2.ll
llvm.used-invalid-init.ll
llvm.used-invalid-type2.ll
llvm.used-invalid-type.ll
llvm.used-ptr-type.ll
masked-load.ll
masked-store.ll
matrix-intrinsics.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
mdcompositetype-templateparams-tuple.ll
mdcompositetype-templateparams.ll
memcpy-inline.ll
memcpy.ll
metadata-function-dbg.ll
metadata-function-prof.ll
module-flags-1.ll
module-flags-2.ll
module-flags-3.ll
module-flags-cgprofile.ll
module-flags-semantic-interposition.ll
musttail-invalid.ll [Verifier] Check byval/etc type when comparing ABI attributes 2021-07-20 20:19:47 +02:00
musttail-valid.ll
noalias_scope_decl.ll Introduce llvm.noalias.decl intrinsic 2021-01-16 09:20:45 +01:00
non-integer-gep-index.ll
non-integer-gep-index.ll.bc
non-integral-pointers.ll Allow ptrtoint/inttoptr of non-integral pointer types in IR 2021-06-11 13:38:32 -07:00
noundef.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
opaque-ptr-invalid.ll [OpaquePtr] Verify Opaque pointer in function parameter 2021-06-15 14:57:48 -07:00
opaque-ptr.ll [IR] Add elementtype attribute 2021-07-15 18:04:26 +02:00
operand-bundles.ll [ObjC][ARC] Ignore operand bundle "clang.arc.attachedcall" on a call if 2021-06-28 11:02:30 -07:00
PhiGrouping.ll
pr34325.ll
preallocated-invalid.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
preallocated-valid.ll [Preallocated] Add @llvm.call.preallocated.teardown 2020-07-08 08:48:44 -07:00
range-1.ll
range-2.ll
README.txt
recursive-struct-param.ll
recursive-type-1.ll
recursive-type-2.ll
recursive-type-3.ll
recursive-type-load.ll Harden IR and bitcode parsers against infinite size types. 2020-05-16 14:24:51 -07:00
recursive-type-store.ll Harden IR and bitcode parsers against infinite size types. 2020-05-16 14:24:51 -07:00
reduction-intrinsics.ll [IR] restrict vector reduction intrinsic types 2021-02-21 12:37:00 -05:00
resume.ll
sat-intrinsics.ll [Verifier] add tests for saturating intrinsics; NFC 2021-02-19 14:58:25 -05:00
scalable-global-vars.ll [IR] Allow scalable vectors in structs to support intrinsics returning multiple values. 2021-01-17 23:29:51 -08:00
scalable-vector-struct-alloca.ll [IR] Allow scalable vectors in structs to support intrinsics returning multiple values. 2021-01-17 23:29:51 -08:00
scalable-vector-struct-load.ll [IR] Allow scalable vectors in structs to support intrinsics returning multiple values. 2021-01-17 23:29:51 -08:00
scalable-vector-struct-store.ll [IR] Allow scalable vectors in structs to support intrinsics returning multiple values. 2021-01-17 23:29:51 -08:00
scatter_gather.ll
SelfReferential.ll
set1.ll Add debug support for set types 2021-03-29 18:04:48 -07:00
speculatable-callsite-invalid.ll
speculatable-callsite.ll
sret.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
statepoint.ll OpaquePtr: Bulk update tests to use typed sret 2020-11-20 17:58:26 -05:00
stepvector-intrinsic.ll [IR][SVE] Add new llvm.experimental.stepvector intrinsic 2021-03-23 10:43:35 +00:00
swiftasync.ll IR+AArch64: add a "swiftasync" argument attribute. 2021-05-14 11:43:58 +01:00
swifterror2.ll [AsmParser] Unify parsing of attributes 2021-07-15 17:51:11 +02:00
swifterror3.ll
swifterror.ll [Verifier] Improve incompatible attribute type check 2021-07-14 21:02:10 +02:00
swiftself.ll
swifttailcc-musttail-valid.ll SwiftTailCC: teach verifier musttail rules applicable to this CC. 2021-05-28 11:12:00 +01:00
swifttailcc-musttail.ll SwiftTailCC: teach verifier musttail rules applicable to this CC. 2021-05-28 11:12:00 +01:00
tailcc-musttail.ll SwiftTailCC: teach verifier musttail rules applicable to this CC. 2021-05-28 11:12:00 +01:00
tbaa-allowed.ll
tbaa.ll StoreInst should store Align, not MaybeAlign 2020-05-15 12:26:58 -07:00
token1-with-asserts.ll [NFC][Verifier] Split token1.ll into two, assert/non-assert versions 2021-04-28 13:58:38 +03:00
token1-without-asserts.ll [NFC][Verifier] Split token1.ll into two, assert/non-assert versions 2021-04-28 13:58:38 +03:00
token2.ll
token3.ll
token4.ll
token5.ll
token6.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
token7.ll
unique-disubprogram.ll Add a verifier check that rejects non-distinct DISubprogram function 2020-09-25 12:04:46 -07:00
unsized-types-alloca.ll Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
unsized-types-load.ll Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
unsized-types-store.ll Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
varargs-intrinsic.ll
variant-part.ll
vp-intrinsics.ll [VP] Binary floating-point intrinsics. 2021-06-14 08:51:41 +02:00
vscale_range.ll [IR] Add vscale_range IR function attribute 2021-03-22 12:05:06 +00:00
weak-dllimport.ll Fix for PR46384. Failure on weak dllimport. 2020-09-02 19:12:24 -07:00
writeonly.ll
x86_amx1.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx2.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx3.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx4.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx5.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx6.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx7.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx8.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_amx9.ll [X86][AMX] Verify illegal types or instructions for x86_amx. 2021-04-20 16:14:22 +08:00
x86_intr.ll OpaquePtr: Require byval on x86_intrcc parameter 0 2020-12-14 16:34:37 -05:00

This directory contains testcases that the verifier is supposed to detect as
malformed LLVM code.  Testcases for situations that the verifier incorrectly
identifies as malformed should go in the test/Assembler directory.