aboutsummaryrefslogtreecommitdiff
path: root/test/DebugInfo/dwarfdump-type-units.test
blob: a8876a68afc1a088ce5d241f459e35f23aab4568 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
RUN: llvm-dwarfdump -v %p/Inputs/dwarfdump-type-units.elf-x86-64 | FileCheck -check-prefix=CHECK -check-prefix=LONG %s
RUN: llvm-dwarfdump -v %p/Inputs/dwarfdump-type-units.elf-x86-64 -summarize-types | FileCheck -check-prefix=CHECK -check-prefix=SHORT %s
RUN: llvm-dwarfdump -v -debug-types %p/Inputs/dwarfdump-type-units.elf-x86-64 | FileCheck -check-prefix=TYPES %s

CHECK: debug_info contents:

CHECK: DW_TAG_variable
CHECK-NEXT: DW_AT_name {{.*}}"f"
CHECK: DW_AT_type [DW_FORM_ref_sig8] ([[FOO_SIG:0x[0-9a-f]*]]

CHECK: DW_TAG_variable
CHECK-NEXT: DW_AT_name {{.*}}"b"
CHECK: DW_AT_type [DW_FORM_ref_sig8] ([[BAR_SIG:0x[0-9a-f]*]]


CHECK: debug_types contents:

LONG: 0x00000000: Type Unit: {{.*}} name =
SHORT-NOT: Type Unit
SHORT: name =
CHECK-SAME: 'bar' type_signature = [[BAR_SIG]]
SHORT-SAME: length =
LONG-SAME: type_offset = 0x[[BAR_OFF:[0-9a-f]*]] (next unit at
LONG: DW_TAG_type_unit
LONG-NOT: NULL
LONG: 0x0000[[BAR_OFF]]: DW_TAG_structure_type
LONG-NEXT: DW_AT_name {{.*}}"bar"

LONG: 0x00000000: Type Unit: {{.*}} name =
SHORT: name =
CHECK-SAME: 'foo' type_signature = [[FOO_SIG]]
LONG-SAME: type_offset = 0x[[FOO_OFF:[0-9a-f]*]] (next unit at
LONG: DW_TAG_type_unit
LONG-NOT: NULL
LONG: 0x0000[[FOO_OFF]]: DW_TAG_structure_type
LONG-NEXT: DW_AT_name {{.*}}"foo"

TYPES-NOT: debug_info contents:
TYPES: debug_types contents: