forked from OSchip/llvm-project
166121ad0b
Verify that debug info intrinsic arguments are valid. (These checks will not recurse through the full debug info graph, so they don't need to be cordoned of in `DebugInfoVerifier`.) With those checks in place, changing the `DbgIntrinsicInst` accessors to downcast to `MDLocalVariable` and `MDExpression` is natural (added isa specializations in `Metadata.h` to support this). Added tests to `test/Verifier` for the new -verify checks, and fixed the debug info in all the in-tree tests. If you have out-of-tree testcases that have started to fail to -verify, hopefully the verify checks are helpful. The most likely problem is that the expression argument is `!{}` (instead of `!MDExpression()`). llvm-svn: 232296 |
||
---|---|---|
.. | ||
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 | ||
AmbiguousPhi.ll | ||
PhiGrouping.ll | ||
README.txt | ||
SelfReferential.ll | ||
alias.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-vector-pointer-as.ll | ||
byval-1.ll | ||
byval-4.ll | ||
comdat.ll | ||
comdat2.ll | ||
comdat3.ll | ||
cttz-undef-arg.ll | ||
dominates.ll | ||
fpmath.ll | ||
frameescape.ll | ||
gcread-ptrptr.ll | ||
gcroot-alloca.ll | ||
gcroot-meta.ll | ||
gcroot-ptrptr.ll | ||
gcwrite-ptrptr.ll | ||
global-ctors.ll | ||
ident-meta1.ll | ||
ident-meta2.ll | ||
ident-meta3.ll | ||
ident-meta4.ll | ||
inalloca-vararg.ll | ||
inalloca1.ll | ||
inalloca2.ll | ||
inalloca3.ll | ||
invalid-statepoint.ll | ||
invalid-statepoint2.ll | ||
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.value-expression.ll | ||
llvm.dbg.value-value.ll | ||
llvm.dbg.value-variable.ll | ||
llvm.used-invalid-init.ll | ||
llvm.used-invalid-init2.ll | ||
llvm.used-invalid-type.ll | ||
llvm.used-invalid-type2.ll | ||
llvm.used-ptr-type.ll | ||
memcpy.ll | ||
module-flags-1.ll | ||
module-flags-2.ll | ||
module-flags-3.ll | ||
musttail-invalid.ll | ||
musttail-valid.ll | ||
range-1.ll | ||
range-2.ll | ||
recursive-struct-param.ll | ||
recursive-type-1.ll | ||
recursive-type-2.ll | ||
recursive-type-3.ll | ||
sret.ll | ||
statepoint.ll | ||
varargs-intrinsic.ll |
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.