xref: /llvm-project/llvm/test/DebugInfo/dwarfdump-type-units.test (revision 33529ba0cb2bcfb04ce05d8be6075a19238ae172)
1RUN: llvm-dwarfdump -v %p/Inputs/dwarfdump-type-units.elf-x86-64 | FileCheck -check-prefix=INFO -check-prefix=CHECK -check-prefix=LONG %s
2RUN: llvm-dwarfdump -debug-types -debug-info %p/Inputs/dwarfdump-type-units.elf-x86-64 -summarize-types | FileCheck -implicit-check-not=DW_ -check-prefix=CHECK -check-prefix=SHORT %s
3RUN: llvm-dwarfdump -v -debug-types %p/Inputs/dwarfdump-type-units.elf-x86-64 | FileCheck -check-prefix=TYPES %s
4
5INFO: debug_info contents:
6
7INFO: DW_TAG_variable
8INFO-NEXT: DW_AT_name {{.*}}"f"
9INFO: DW_AT_type [DW_FORM_ref_sig8] ([[FOO_SIG:0x[0-9a-f]*]]
10
11INFO: DW_TAG_variable
12INFO-NEXT: DW_AT_name {{.*}}"b"
13INFO: DW_AT_type [DW_FORM_ref_sig8] ([[BAR_SIG:0x[0-9a-f]*]]
14
15
16CHECK: debug_types contents:
17
18LONG: 0x00000000: Type Unit: {{.*}} name =
19SHORT-NOT: Type Unit
20SHORT: name =
21CHECK-SAME: 'bar', type_signature =
22LONG: [[BAR_SIG]]
23SHORT-SAME: length =
24LONG-SAME: type_offset = 0x[[BAR_OFF:[0-9a-f]*]] (next unit at
25LONG: DW_TAG_type_unit
26LONG-NOT: NULL
27LONG: 0x0000[[BAR_OFF]]: DW_TAG_structure_type
28LONG-NEXT: DW_AT_name {{.*}}"bar"
29
30LONG: 0x00000000: Type Unit: {{.*}} name =
31SHORT: name =
32CHECK-SAME: 'foo', type_signature =
33LONG: [[FOO_SIG]]
34LONG-SAME: type_offset = 0x[[FOO_OFF:[0-9a-f]*]] (next unit at
35LONG: DW_TAG_type_unit
36LONG-NOT: NULL
37LONG: 0x0000[[FOO_OFF]]: DW_TAG_structure_type
38LONG-NEXT: DW_AT_name {{.*}}"foo"
39
40TYPES-NOT: debug_info contents:
41TYPES: debug_types contents:
42