| RUN: llvm-dwarfdump -v %p/Inputs/dwarfdump-type-units.elf-x86-64 | FileCheck -check-prefix=INFO -check-prefix=CHECK -check-prefix=LONG %s |
| RUN: 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 |
| RUN: llvm-dwarfdump -v -debug-types %p/Inputs/dwarfdump-type-units.elf-x86-64 | FileCheck -check-prefix=TYPES %s |
| |
| INFO: debug_info contents: |
| |
| INFO: DW_TAG_variable |
| INFO-NEXT: DW_AT_name {{.*}}"f" |
| INFO: DW_AT_type [DW_FORM_ref_sig8] ([[FOO_SIG:0x[0-9a-f]*]] |
| |
| INFO: DW_TAG_variable |
| INFO-NEXT: DW_AT_name {{.*}}"b" |
| INFO: 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 = |
| LONG: [[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 = |
| LONG: [[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: |