llvm-project/llvm/test/DebugInfo
Manman Ren 60352032bf Debug Info: Use identifier to reference DIType in base type field of
ptr_to_member.

We introduce a new class DITypeRef that represents a reference to a DIType.
It wraps around a Value*, which can be either an identifier in MDString
or an actual MDNode. The class has a helper function "resolve" that
finds the actual MDNode for a given DITypeRef.

We specialize getFieldAs to return a field that is a reference to a
DIType. To correctly access the base type field of ptr_to_member,
getClassType now calls getFieldAs<DITypeRef> to return a DITypeRef.

Also add a typedef for DITypeIdentifierMap and a helper
generateDITypeIdentifierMap in DebugInfo.h. In DwarfDebug.cpp, we keep
a DITypeIdentifierMap and call generateDITypeIdentifierMap to actually
populate the map.

Verifier is updated accordingly.

llvm-svn: 190081
2013-09-05 18:48:31 +00:00
..
AArch64 Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
Inputs [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
PowerPC [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
SystemZ Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
X86 Remove hack ensuring that darwin didn't produce dwarf > 3 for modules 2013-09-04 22:21:24 +00:00
2009-10-16-Phi.ll
2009-11-03-InsertExtractValue.ll Debug Info Verifier: verify SPs in llvm.dbg.sp. 2013-07-27 01:26:08 +00:00
2009-11-05-DeadGlobalVariable.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2009-11-06-NamelessGlobalVariable.ll Debug Info Verifier: verify SPs in llvm.dbg.sp. 2013-07-27 01:26:08 +00:00
2009-11-10-CurrentFn.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-01-05-DbgScope.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-01-19-DbgScope.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-03-12-llc-crash.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-03-19-DbgDeclare.ll Revert "Revert "PR14606: debug info imported_module support"" 2013-04-22 06:12:31 +00:00
2010-03-24-MemberFn.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-03-30-InvalidDbgInfoCrash.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-04-06-NestedFnDbgInfo.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-04-19-FramePtr.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-05-03-DisableFramePtr.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-05-03-OriginDIE.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-05-10-MultipleCU.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-06-29-InlinedFnLocalVar.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-07-19-Crash.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
2010-10-01-crash.ll Debug Info Verifier: verify SPs in llvm.dbg.sp. 2013-07-27 01:26:08 +00:00
array.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
bug_null_debuginfo.ll Debug Info Verifier: enable verification of DICompileUnit. 2013-07-26 20:04:30 +00:00
debuglineinfo.test Add DIContext::getLineInfoForAddressRange() function and test. This function allows a caller to obtain a table of line information for a function using the function's address and size. 2013-01-26 00:28:05 +00:00
dwarf-public-names.ll Treat the pubtypes section similarly to the pubnames section and emit 2013-08-26 23:24:35 +00:00
dwarfdump-debug-frame-simple.test Previously, parsing capability of the .debug_frame section was added 2013-02-21 22:53:19 +00:00
dwarfdump-debug-loc-simple.test Spell correct (s/begining/beginning/) 2013-06-19 21:42:05 +00:00
dwarfdump-dump-flags.test Add command-line flags for DWARF dumping. 2013-01-25 20:26:43 +00:00
dwarfdump-inlining.test Update tests for DWARF parser: store sources next to pre-built object files and provide build instructions 2013-02-08 14:34:33 +00:00
dwarfdump-pubnames.test Add testcase for llvm-dwarfdump to test parsing of the pubnames data. 2013-02-14 16:10:58 +00:00
dwarfdump-test.test llvm-symbolizer: correctly parse filenames given in quotes 2013-04-05 09:22:24 +00:00
dwarfdump-zlib.test Use zlib to uncompress debug sections in DWARF parser. 2013-04-23 10:17:34 +00:00
enum.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
global.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
inheritance.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
inline-debug-info-multiret.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
inline-debug-info.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
inlined-arguments.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
inlined-vars.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
llvm-symbolizer.test llvm-symbolizer: add support for .gnu_debuglink section 2013-08-14 17:09:30 +00:00
member-pointers.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
namespace.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
template-recursive-void.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
tu-member-pointer.ll Debug Info: Use identifier to reference DIType in base type field of 2013-09-05 18:48:31 +00:00
two-cus-from-same-file.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
version.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00