llvm/test/DebugInfo
Adrian Prantl bb82f0a4b0 Emit the DW_AT_type for a C++ static member definition
if it is more specific than the one in its DW_AT_specification.

If a static member is an array, the translation unit containing the
member definition may have a more specific type (including its length)
than TUs only seeing the class declaration. This patch adds a
DW_AT_type to the member's DW_TAG_variable in addition to the
DW_AT_specification in these cases. The member type in the
DW_AT_specification still shows the more generic type (without the
length) to avoid defeating type uniquing.

The DWARF standard discourages “duplicating” a DW_AT_type in a member
variable definition but doesn’t explicitly forbid it.  Having the more
specific type (with the array length) available is what allows the
debugger to print the contents of a static array member variable.

https://reviews.llvm.org/D26368
rdar://problem/28706946

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@286302 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-08 22:11:38 +00:00
..
AArch64 Reverting back r285355: "Update .debug_line section version information to match DWARF version", while I'm investigating a test failure. 2016-10-27 23:20:19 +00:00
ARM DebugInfo: preparation to implement DW_AT_alignment 2016-10-20 00:13:12 +00:00
COFF Emit S_COMPILE3 record once per TU rather than once per function 2016-11-02 21:30:35 +00:00
Generic Reverting back r285355: "Update .debug_line section version information to match DWARF version", while I'm investigating a test failure. 2016-10-27 23:20:19 +00:00
Inputs Revert r282238 "Revert r282235 "[llvm-dwarfdump] - Teach dwarfdump to dump gdb-index section."" 2016-09-23 11:01:53 +00:00
Lanai
Mips [mips][FastISel] Instantiate the MipsFastISel class only for targets that support FastISel. 2016-10-18 13:05:42 +00:00
MIR Teach LiveDebugValues about lexical scopes. 2016-09-28 17:51:14 +00:00
PDB Add CodeViewRecordIO for reading and writing. 2016-11-02 17:05:19 +00:00
PowerPC DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
Sparc
SystemZ
WebAssembly [WebAssembly] Trying to fix broken tests in CodeGen/WebAssembly caused by r281285. 2016-09-13 10:05:44 +00:00
X86 Emit the DW_AT_type for a C++ static member definition 2016-11-08 22:11:38 +00:00
arm-relocs.test
debuglineinfo-macho.test
debuglineinfo.test
debugmacinfo.test
dwarfdump-64-bit-dwarf.test
dwarfdump-accel.test
dwarfdump-debug-frame-simple.test
dwarfdump-debug-loc-simple.test
dwarfdump-dump-flags.test
dwarfdump-dump-gdbindex.test Revert r282238 "Revert r282235 "[llvm-dwarfdump] - Teach dwarfdump to dump gdb-index section."" 2016-09-23 11:01:53 +00:00
dwarfdump-dwp.test
dwarfdump-invalid.test
dwarfdump-line-dwo.test
dwarfdump-macho-relocs.test
dwarfdump-macho-universal.test
dwarfdump-objc.test
dwarfdump-pubnames.test
dwarfdump-ranges.test
dwarfdump-type-units.test dwarfdump: -summarize-types: print a short summary (unqualified type name, hash, length) of type units rather than dumping contents 2016-10-18 21:09:48 +00:00
dwarfdump-zlib.test
dwo.ll
llvm-symbolizer-split-dwarf-empty.test
llvm-symbolizer-zlib.test
llvm-symbolizer.test
macro_link.ll
member-pointers.o
missing-abstract-variable.o
skeletoncu.ll Unxfail passing tests on Hexagon 2016-08-19 15:07:58 +00:00
strip-DIGlobalVariable.ll Teach llvm::StripDebugInfo() about global variable !dbg attachments. 2016-10-10 17:53:33 +00:00