llvm/test/DebugInfo
Duncan P. N. Exon Smith 08e687e684 Verifier: Check debug info intrinsic arguments
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()`).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@232296 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-15 01:21:30 +00:00
..
AArch64 [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
ARM [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
COFF Use the existing begin and end symbol for debug info. 2015-03-05 02:05:42 +00:00
Inputs DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
Mips Relax CHECK to match mips syntax. 2015-03-11 12:48:24 +00:00
PDB [llvm-pdbdump] Display full enum definitions. 2015-03-04 06:09:53 +00:00
PowerPC Print section start labels when first switching to the section. 2015-03-11 00:51:37 +00:00
Sparc [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
SystemZ [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
X86 Use add32ri8 and friends on fast isel. 2015-03-13 22:18:18 +00:00
2009-10-16-Phi.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2009-11-03-InsertExtractValue.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2009-11-05-DeadGlobalVariable.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2009-11-06-NamelessGlobalVariable.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2009-11-10-CurrentFn.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-01-05-DbgScope.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-03-12-llc-crash.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-03-19-DbgDeclare.ll Verifier: Check debug info intrinsic arguments 2015-03-15 01:21:30 +00:00
2010-03-24-MemberFn.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-03-30-InvalidDbgInfoCrash.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-04-06-NestedFnDbgInfo.ll Emit correct linkage-name attribute based on DWARF version. 2015-03-10 22:44:45 +00:00
2010-04-19-FramePtr.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-05-03-DisableFramePtr.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-05-03-OriginDIE.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-05-10-MultipleCU.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-06-29-InlinedFnLocalVar.ll Relax CHECK to match mips syntax. 2015-03-11 12:48:24 +00:00
2010-07-19-Crash.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
2010-10-01-crash.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
accel-table-hash-collisions.ll DwarfAccelTable: Fix handling of hash collisions. 2015-03-10 00:46:31 +00:00
arm-relocs.test
array.ll Print section start labels when first switching to the section. 2015-03-11 00:51:37 +00:00
block-asan.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
bug_null_debuginfo.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
constant-pointers.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
cross-cu-inlining.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
cross-cu-linkonce-distinct.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
cross-cu-linkonce.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
cu-range-hole.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
cu-ranges.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
dead-argument-order.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
debug-info-always-inline.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
debug-info-qualifiers.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
debuginfofinder-multiple-cu.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
debuglineinfo.test
dwarf-public-names.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
dwarfdump-accel.test Reapply "[dwarfdump] Add support for dumping accelerator tables." 2014-11-14 16:15:53 +00:00
dwarfdump-debug-frame-simple.test [dwarfdump] Make debug_frame dump actually useful. 2015-02-25 21:30:22 +00:00
dwarfdump-debug-loc-simple.test
dwarfdump-dump-flags.test
dwarfdump-line-dwo.test
dwarfdump-objc.test [dwarfdump] Prettyprint DW_AT_APPLE_property_attribute bitfield values. 2014-10-10 15:51:10 +00:00
dwarfdump-pubnames.test
dwarfdump-ranges.test [dwarfdump] Dump DW_AT_ranges values inline in the debug_info dump. 2014-10-23 04:08:34 +00:00
dwarfdump-type-units.test
dwarfdump-zlib.test Kill symbolization functionality in llvm-dwarfdump. We have llvm-symbolizer for that. 2014-05-19 18:45:32 +00:00
empty.ll Split test in two to handle building without x86. 2015-03-10 23:44:12 +00:00
enum-types.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
enum.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
global.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
gmlt.test test: XFAIL the non-darwin gmlt test on darwin 2014-10-01 05:45:45 +00:00
incorrect-variable-debugloc1.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
incorrect-variable-debugloc.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
inheritance.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
inline-debug-info-multiret.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
inline-debug-info.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
inline-no-debug-info.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
inline-scopes.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
inlined-arguments.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
inlined-vars.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
llvm-symbolizer-zlib.test Kill symbolization functionality in llvm-dwarfdump. We have llvm-symbolizer for that. 2014-05-19 18:45:32 +00:00
llvm-symbolizer.test Remove "REQUIRES:shell" from tests. They work for me. 2014-11-04 13:41:33 +00:00
location-verifier.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
lto-comp-dir.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
member-order.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
member-pointers.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
member-pointers.o Revert "Revert "DI: Fold constant arguments into a single MDString"" 2014-10-03 20:01:09 +00:00
missing-abstract-variable.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
missing-abstract-variable.o Revert "Revert "DI: Fold constant arguments into a single MDString"" 2014-10-03 20:01:09 +00:00
multiline.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
namespace_function_definition.ll Emit correct linkage-name attribute based on DWARF version. 2015-03-10 22:44:45 +00:00
namespace_inline_function_definition.ll Emit correct linkage-name attribute based on DWARF version. 2015-03-10 22:44:45 +00:00
namespace.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
nodebug.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
piece-verifier.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
PR20038.ll Emit correct linkage-name attribute based on DWARF version. 2015-03-10 22:44:45 +00:00
restrict.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
sugared-constants.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
template-recursive-void.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
tu-composite.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
tu-member-pointer.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
two-cus-from-same-file.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
typedef.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
unconditional-branch.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
varargs.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
version.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00