llvm-project/llvm/test/Verifier
Chandler Carruth 043949d446 [PM] Make the verifier work independently of any pass manager.
This makes the 'verifyFunction' and 'verifyModule' functions totally
independent operations on the LLVM IR. It also cleans up their API a bit
by lifting the abort behavior into their clients and just using an
optional raw_ostream parameter to control printing.

The implementation of the verifier is now just an InstVisitor with no
multiple inheritance. It also is significantly more const-correct, and
hides the const violations internally. The two layers that force us to
break const correctness are building a DomTree and dispatching through
the InstVisitor.

A new VerifierPass is used to implement the legacy pass manager
interface in terms of the other pieces.

The error messages produced may be slightly different now, and we may
have slightly different short circuiting behavior with different usage
models of the verifier, but generally everything works equivalently and
this unblocks wiring the verifier up to the new pass manager.

llvm-svn: 199569
2014-01-19 02:22:18 +00:00
..
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
2008-03-01-AllocaSized.ll
2008-08-22-MemCpyAlignment.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 [PM] Make the verifier work independently of any pass manager. 2014-01-19 02:22:18 +00:00
AmbiguousPhi.ll
PhiGrouping.ll
README.txt
SelfReferential.ll
aliasing-chain.ll
bitcast-address-space-nested-global-cycle.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-address-space-nested-global.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-address-space-through-constant-inttoptr-inside-gep-instruction.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-address-space-through-constant-inttoptr.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-address-space-through-gep-2.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-address-space-through-gep.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-address-space-through-inttoptr.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-address-spaces.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-alias-address-space.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
bitcast-vector-pointer-as.ll Fix all the verifier tests I added for address spaces. 2014-01-02 21:09:05 +00:00
byval-1.ll
byval-4.ll
cttz-undef-arg.ll
dominates.ll
fpmath.ll
gcread-ptrptr.ll
gcroot-alloca.ll
gcroot-meta.ll
gcroot-ptrptr.ll
gcwrite-ptrptr.ll
ident-meta1.ll Add support for metadata representing .ident directives. 2013-10-16 01:49:05 +00:00
ident-meta2.ll Add support for metadata representing .ident directives. 2013-10-16 01:49:05 +00:00
ident-meta3.ll Add support for metadata representing .ident directives. 2013-10-16 01:49:05 +00:00
inalloca-vararg.ll Add an inalloca flag to allocas 2014-01-17 23:58:17 +00:00
inalloca1.ll Change inalloca rules to make it only apply to the last parameter 2014-01-16 22:59:24 +00:00
inalloca2.ll Add an inalloca flag to allocas 2014-01-17 23:58:17 +00:00
invoke.ll
llvm.compiler_used-invalid-type.ll s/compiler_used/compiler.used/. 2013-07-19 18:44:51 +00:00
llvm.used-invalid-init.ll Clarify that llvm.used can contain aliases. 2013-04-22 14:58:02 +00:00
llvm.used-invalid-init2.ll Clarify that llvm.used can contain aliases. 2013-04-22 14:58:02 +00:00
llvm.used-invalid-type.ll Clarify that llvm.used can contain aliases. 2013-04-22 14:58:02 +00:00
llvm.used-invalid-type2.ll Fix typo in test. 2013-07-22 21:10:42 +00:00
llvm.used-ptr-type.ll Clarify that llvm.used can contain aliases. 2013-04-22 14:58:02 +00:00
module-flags-1.ll
range-1.ll
range-2.ll
recursive-type-1.ll Fix the segfault reported in PR 11990. 2013-12-07 00:13:34 +00:00
recursive-type-2.ll Fix the segfault reported in PR 11990. 2013-12-07 00:13:34 +00:00
recursive-type-3.ll Fix the segfault reported in PR 11990. 2013-12-07 00:13:34 +00:00
varargs-intrinsic.ll Grow the stackmap/patchpoint format to hold 64-bit IDs. 2013-12-13 18:37:10 +00:00

README.txt

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.