aboutsummaryrefslogtreecommitdiff
path: root/test/tools
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2017-10-10 11:24:41 +0000
committerJonas Devlieghere <jonas@devlieghere.com>2017-10-10 11:24:41 +0000
commit098eeb5ecccdce2ef64d7609902dab52eb27841c (patch)
tree57472a8d116beeede79f6d83e0a13df0a05903bf /test/tools
parent0e4cc5998cfad7612e0460362ed6d0137e1f7c1b (diff)
downloadllvm-098eeb5ecccdce2ef64d7609902dab52eb27841c.tar.gz
[llvm-dwarfdump] Print type names in DW_AT_type DIEs
This patch adds printing for DW_AT_type DIEs like it is already the case for DW_AT_specification DIEs. This is a rather naive approach and only a start. We should have pretty printers for different languages. Differential revision: https://reviews.llvm.org/D36993 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315297 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/tools')
-rw-r--r--test/tools/dsymutil/X86/basic-linking-x86.test32
-rw-r--r--test/tools/dsymutil/X86/basic-lto-dw4-linking-x86.test14
-rw-r--r--test/tools/dsymutil/X86/basic-lto-linking-x86.test32
-rw-r--r--test/tools/dsymutil/X86/modules.m8
-rw-r--r--test/tools/dsymutil/X86/odr-member-functions.cpp2
5 files changed, 44 insertions, 44 deletions
diff --git a/test/tools/dsymutil/X86/basic-linking-x86.test b/test/tools/dsymutil/X86/basic-linking-x86.test
index 37d8be73360..036eac665d9 100644
--- a/test/tools/dsymutil/X86/basic-linking-x86.test
+++ b/test/tools/dsymutil/X86/basic-linking-x86.test
@@ -26,7 +26,7 @@ CHECK: DW_AT_name ("main")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic1.c")
CHECK: DW_AT_decl_line (23)
CHECK: DW_AT_prototyped (0x01)
-CHECK: DW_AT_type (cu + 0x0063)
+CHECK: DW_AT_type (cu + 0x0063
CHECK: DW_AT_external (0x01)
CHECK: DW_AT_accessibility (DW_ACCESS_public)
CHECK: DW_AT_low_pc (0x0000000100000ea0)
@@ -36,13 +36,13 @@ CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("argc")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic1.c")
CHECK: DW_AT_decl_line (23)
-CHECK: DW_AT_type (cu + 0x0063)
+CHECK: DW_AT_type (cu + 0x0063
CHECK: DW_AT_location (DW_OP_fbreg -8)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("argv")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic1.c")
CHECK: DW_AT_decl_line (23)
-CHECK: DW_AT_type (cu + 0x006a)
+CHECK: DW_AT_type (cu + 0x006a
CHECK: DW_AT_location (DW_OP_fbreg -16)
CHECK: NULL
CHECK: DW_TAG_base_type
@@ -50,11 +50,11 @@ CHECK: DW_AT_name ("int")
CHECK: DW_AT_encoding (DW_ATE_signed)
CHECK: DW_AT_byte_size (0x04)
CHECK: DW_TAG_pointer_type
-CHECK: DW_AT_type (cu + 0x006f)
+CHECK: DW_AT_type (cu + 0x006f
CHECK: DW_TAG_pointer_type
-CHECK: DW_AT_type (cu + 0x0074)
+CHECK: DW_AT_type (cu + 0x0074
CHECK: DW_TAG_const_type
-CHECK: DW_AT_type (cu + 0x0079)
+CHECK: DW_AT_type (cu + 0x0079
CHECK: DW_TAG_base_type
CHECK: DW_AT_name ("char")
CHECK: DW_AT_encoding (DW_ATE_signed_char)
@@ -73,30 +73,30 @@ CHECK: DW_TAG_base_type
CHECK: DW_AT_name ("int")
CHECK: DW_TAG_variable
CHECK: DW_AT_name ("private_int")
-CHECK: DW_AT_type (cu + 0x0026)
+CHECK: DW_AT_type (cu + 0x0026
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic2.c")
BASIC: DW_AT_location (DW_OP_addr 0x100001008)
ARCHIVE: DW_AT_location (DW_OP_addr 0x100001004)
CHECK: DW_TAG_variable
CHECK: DW_AT_name ("baz")
-CHECK: DW_AT_type (cu + 0x0026)
+CHECK: DW_AT_type (cu + 0x0026
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic2.c")
CHECK: DW_AT_location (DW_OP_addr 0x100001000)
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("foo")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic2.c")
-CHECK: DW_AT_type (cu + 0x0026)
+CHECK: DW_AT_type (cu + 0x0026
CHECK: DW_AT_low_pc (0x0000000100000ed0)
CHECK: DW_AT_high_pc (0x0000000100000f19)
CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("arg")
-CHECK: DW_AT_type (cu + 0x0026)
+CHECK: DW_AT_type (cu + 0x0026
CHECK: DW_AT_location (DW_OP_fbreg -4)
CHECK: NULL
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("inc")
-CHECK: DW_AT_type (cu + 0x0026)
+CHECK: DW_AT_type (cu + 0x0026
CHECK: DW_AT_low_pc (0x0000000100000f20)
CHECK: DW_AT_high_pc (0x0000000100000f37)
CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
@@ -112,28 +112,28 @@ CHECK: DW_AT_comp_dir ("/Inputs")
CHECK: DW_AT_low_pc (0x0000000100000f40)
CHECK: DW_TAG_variable
CHECK: DW_AT_name ("val")
-CHECK: DW_AT_type (cu + 0x003c)
+CHECK: DW_AT_type (cu + 0x003c
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic3.c")
BASIC: DW_AT_location (DW_OP_addr 0x100001004)
ARCHIVE: DW_AT_location (DW_OP_addr 0x100001008)
CHECK: DW_TAG_volatile_type
-CHECK: DW_AT_type (cu + 0x0041)
+CHECK: DW_AT_type (cu + 0x0041
CHECK: DW_TAG_base_type
CHECK: DW_AT_name ("int")
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("bar")
-CHECK: DW_AT_type (cu + 0x0041)
+CHECK: DW_AT_type (cu + 0x0041
CHECK: DW_AT_low_pc (0x0000000100000f40)
CHECK: DW_AT_high_pc (0x0000000100000f84)
CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("arg")
-CHECK: DW_AT_type (cu + 0x0041)
+CHECK: DW_AT_type (cu + 0x0041
CHECK: DW_AT_location (DW_OP_fbreg -8)
CHECK: NULL
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("inc")
-CHECK: DW_AT_type (cu + 0x0041)
+CHECK: DW_AT_type (cu + 0x0041
CHECK: DW_AT_low_pc (0x0000000100000f90)
CHECK: DW_AT_high_pc (0x0000000100000fa9)
CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
diff --git a/test/tools/dsymutil/X86/basic-lto-dw4-linking-x86.test b/test/tools/dsymutil/X86/basic-lto-dw4-linking-x86.test
index d3530d5f85b..bd4784deccf 100644
--- a/test/tools/dsymutil/X86/basic-lto-dw4-linking-x86.test
+++ b/test/tools/dsymutil/X86/basic-lto-dw4-linking-x86.test
@@ -20,20 +20,20 @@ CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
CHECK: DW_AT_name ("main")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic1.c")
CHECK: DW_AT_prototyped (true)
-CHECK: DW_AT_type (0x00000000000000a1)
+CHECK: DW_AT_type (0x00000000000000a1
CHECK: DW_AT_external (true)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_location (DW_OP_reg5 RDI, DW_OP_piece 0x4)
CHECK: DW_AT_name ("argc")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic1.c")
-CHECK: DW_AT_type (0x00000000000000a1)
+CHECK: DW_AT_type (0x00000000000000a1
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_location (DW_OP_reg4 RSI)
CHECK: DW_AT_name ("argv")
-CHECK: DW_AT_type (cu + 0x0060)
+CHECK: DW_AT_type (cu + 0x0060
CHECK: NULL
CHECK: DW_TAG_pointer_type
-CHECK: DW_AT_type (cu + 0x0065)
+CHECK: DW_AT_type (cu + 0x0065
CHECK: DW_TAG_pointer_type
CHECK: DW_TAG_const_type
CHECK: DW_TAG_base_type
@@ -62,7 +62,7 @@ CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic2.c")
CHECK: DW_AT_location (DW_OP_addr 0x100001008)
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("inc")
-CHECK: DW_AT_type (cu + 0x002a)
+CHECK: DW_AT_type (cu + 0x002a
CHECK: DW_AT_inline (DW_INL_inlined)
CHECK: DW_TAG_subprogram
CHECK: DW_AT_low_pc (0x0000000100000f50)
@@ -71,12 +71,12 @@ CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
CHECK: DW_AT_name ("foo")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic2.c")
CHECK: DW_AT_prototyped (true)
-CHECK: DW_AT_type (cu + 0x002a)
+CHECK: DW_AT_type (cu + 0x002a
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_location (0x00000000
CHECK: 0x0000000000000000 - 0x000000000000000c: DW_OP_reg5 RDI, DW_OP_piece 0x4)
CHECK: DW_AT_name ("arg")
-CHECK: DW_AT_type (cu + 0x002a)
+CHECK: DW_AT_type (cu + 0x002a
CHECK: DW_TAG_inlined_subroutine
CHECK: DW_AT_abstract_origin (cu + 0x005b "inc")
CHECK: DW_AT_low_pc (0x0000000100000f61)
diff --git a/test/tools/dsymutil/X86/basic-lto-linking-x86.test b/test/tools/dsymutil/X86/basic-lto-linking-x86.test
index 9004bbcb7df..76bc1142736 100644
--- a/test/tools/dsymutil/X86/basic-lto-linking-x86.test
+++ b/test/tools/dsymutil/X86/basic-lto-linking-x86.test
@@ -19,7 +19,7 @@ CHECK: DW_AT_name ("main")
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic1.c")
CHECK: DW_AT_decl_line (23)
CHECK: DW_AT_prototyped (0x01)
-CHECK: DW_AT_type (cu + 0x0063)
+CHECK: DW_AT_type (cu + 0x0063
CHECK: DW_AT_external (0x01)
CHECK: DW_AT_accessibility (DW_ACCESS_public)
CHECK: DW_AT_low_pc (0x0000000100000f40)
@@ -27,11 +27,11 @@ CHECK: DW_AT_high_pc (0x0000000100000f4b)
CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("argc")
-CHECK: DW_AT_type (cu + 0x0063)
+CHECK: DW_AT_type (cu + 0x0063
CHECK: DW_AT_location (DW_OP_reg5 RDI, DW_OP_piece 0x4)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("argv")
-CHECK: DW_AT_type (cu + 0x006a)
+CHECK: DW_AT_type (cu + 0x006a
CHECK: DW_AT_location (DW_OP_reg4 RSI)
CHECK: NULL
CHECK: DW_TAG_base_type
@@ -39,11 +39,11 @@ CHECK: DW_AT_name ("int")
CHECK: DW_AT_encoding (DW_ATE_signed)
CHECK: DW_AT_byte_size (0x04)
CHECK: DW_TAG_pointer_type
-CHECK: DW_AT_type (cu + 0x006f)
+CHECK: DW_AT_type (cu + 0x006f
CHECK: DW_TAG_pointer_type
-CHECK: DW_AT_type (cu + 0x0074)
+CHECK: DW_AT_type (cu + 0x0074
CHECK: DW_TAG_const_type
-CHECK: DW_AT_type (cu + 0x0079)
+CHECK: DW_AT_type (cu + 0x0079
CHECK: DW_TAG_base_type
CHECK: DW_AT_name ("char")
CHECK: DW_AT_encoding (DW_ATE_signed_char)
@@ -60,22 +60,22 @@ CHECK: DW_AT_comp_dir ("/Inputs")
CHECK: DW_AT_low_pc (0x0000000100000f50)
CHECK: DW_TAG_variable
CHECK: DW_AT_name ("private_int")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic2.c")
CHECK: DW_AT_location (DW_OP_addr 0x100001008)
CHECK: DW_TAG_variable
CHECK: DW_AT_name ("baz")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_AT_location (DW_OP_addr 0x100001000)
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("foo")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_AT_low_pc (0x0000000100000f50)
CHECK: DW_AT_high_pc (0x0000000100000f89)
CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("arg")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_AT_location (0x00000000
CHECK: 0x0000000000000000 - 0x000000000000000e: DW_OP_reg5 RDI, DW_OP_piece 0x4)
CHECK: DW_TAG_inlined_subroutine
@@ -86,7 +86,7 @@ CHECK: DW_AT_call_line (20)
CHECK: NULL
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("inc")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_AT_inline (DW_INL_inlined)
CHECK: NULL
@@ -100,20 +100,20 @@ CHECK: DW_AT_comp_dir ("/Inputs")
CHECK: DW_AT_low_pc (0x0000000100000f90)
CHECK: DW_TAG_variable
CHECK: DW_AT_name ("val")
-CHECK: DW_AT_type (cu + 0x003c)
+CHECK: DW_AT_type (cu + 0x003c
CHECK: DW_AT_decl_file ("/Inputs{{[/\\]}}basic3.c")
CHECK: DW_AT_location (DW_OP_addr 0x100001004)
CHECK: DW_TAG_volatile_type
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("bar")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_AT_low_pc (0x0000000100000f90)
CHECK: DW_AT_high_pc (0x0000000100000fb4)
CHECK: DW_AT_frame_base (DW_OP_reg6 RBP)
CHECK: DW_TAG_formal_parameter
CHECK: DW_AT_name ("arg")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: DW_AT_location (0x00000025
CHECK: 0x0000000000000000 - 0x000000000000000f: DW_OP_reg5 RDI, DW_OP_piece 0x4
CHECK: 0x0000000000000019 - 0x000000000000001d: DW_OP_reg5 RDI, DW_OP_piece 0x4)
@@ -129,7 +129,7 @@ CHECK: NULL
CHECK: NULL
CHECK: DW_TAG_subprogram
CHECK: DW_AT_name ("inc")
-CHECK: DW_AT_type (0x0000000000000063)
+CHECK: DW_AT_type (0x0000000000000063
CHECK: NULL
CHECK: .debug_loc contents:
diff --git a/test/tools/dsymutil/X86/modules.m b/test/tools/dsymutil/X86/modules.m
index 8f30d60f3e7..37e18b75b4b 100644
--- a/test/tools/dsymutil/X86/modules.m
+++ b/test/tools/dsymutil/X86/modules.m
@@ -61,7 +61,7 @@ struct PruneMeNot;
// CHECK-NOT: DW_TAG
// CHECK: 0x0[[BARTD:.*]]: DW_TAG_typedef
// CHECK-NOT: DW_TAG
-// CHECK: DW_AT_type [DW_FORM_ref_addr] (0x{{0*}}[[BAR]])
+// CHECK: DW_AT_type [DW_FORM_ref_addr] (0x{{0*}}[[BAR]]
// CHECK: DW_TAG_structure_type
// CHECK-NEXT: DW_AT_name{{.*}}"S"
// CHECK-NOT: DW_TAG
@@ -116,7 +116,7 @@ Bar odr_violation = { 42 };
// CHECK: DW_AT_type {{.*}}{0x{{0*}}[[PTR:.*]]}
//
// CHECK: 0x{{0*}}[[PTR]]: DW_TAG_pointer_type
-// CHECK-NEXT DW_AT_type [DW_FORM_ref_addr] {0x{{0*}}[[INTERFACE]])
+// CHECK-NEXT DW_AT_type [DW_FORM_ref_addr] {0x{{0*}}[[INTERFACE]]
extern int odr_violation;
@import Foo;
@@ -134,9 +134,9 @@ int main(int argc, char **argv) {
// CHECK: DW_AT_name {{.*}}"odr_violation.c"
// CHECK: DW_TAG_variable
// CHECK: DW_AT_name {{.*}}"odr_violation"
-// CHECK: DW_AT_type [DW_FORM_ref4] ({{.*}}{0x{{0*}}[[BAR2:.*]]})
+// CHECK: DW_AT_type [DW_FORM_ref4] ({{.*}}{0x{{0*}}[[BAR2:.*]]}
// CHECK: 0x{{0*}}[[BAR2]]: DW_TAG_typedef
-// CHECK: DW_AT_type [DW_FORM_ref4] ({{.*}}{0x{{0*}}[[BAR3:.*]]})
+// CHECK: DW_AT_type [DW_FORM_ref4] ({{.*}}{0x{{0*}}[[BAR3:.*]]}
// CHECK: DW_AT_name {{.*}}"Bar"
// CHECK: 0x{{0*}}[[BAR3]]: DW_TAG_structure_type
// CHECK-NEXT: DW_AT_name {{.*}}"Bar"
diff --git a/test/tools/dsymutil/X86/odr-member-functions.cpp b/test/tools/dsymutil/X86/odr-member-functions.cpp
index fcb05a753b0..25c4f2a8eca 100644
--- a/test/tools/dsymutil/X86/odr-member-functions.cpp
+++ b/test/tools/dsymutil/X86/odr-member-functions.cpp
@@ -61,7 +61,7 @@ void foo() {
// CHECK-NOT: DW_TAG
// CHECK: DW_AT_name {{.*}}"s"
// CHECK-NOT: DW_TAG
-// CHECK: DW_AT_type {{.*}}[[S]])
+// CHECK: DW_AT_type {{.*}}[[S]]
// CHECK: DW_TAG_inlined_subroutine
// CHECK-NEXT: DW_AT_abstract_origin{{.*}}[[FOO_SUB]]
// CHECK-NOT: DW_TAG