forked from OSchip/llvm-project
57 lines
2.5 KiB
Plaintext
57 lines
2.5 KiB
Plaintext
RUN: llvm-dwarfdump -v %p/Inputs/dwarfdump-str-offsets-dwp.x86_64.o | FileCheck %s
|
|
|
|
; Verify that the correct strings from each unit are displayed and that the
|
|
; index for the .debug_str_offsets section has the right values.
|
|
|
|
; CHECK: Compile Unit
|
|
; CHECK-NOT: NULL
|
|
; CHECK: DW_TAG_compile_unit
|
|
; CHECK-NEXT: DW_AT_producer [DW_FORM_strx] ( indexed (00000000) string = "Handmade DWARF producer")
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000001) string = "Compile_Unit_1")
|
|
; CHECK-NEXT: DW_AT_str_offsets_base [DW_FORM_sec_offset] (0x00000008)
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000002) string = "/home/test/CU1")
|
|
; CHECK-NOT: NULL
|
|
|
|
; CHECK: Compile Unit
|
|
; CHECK-NOT: NULL
|
|
; CHECK: DW_TAG_compile_unit
|
|
; CHECK-NEXT: DW_AT_producer [DW_FORM_strx] ( indexed (00000000) string = "Handmade DWARF producer")
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000001) string = "Compile_Unit_2")
|
|
; CHECK-NEXT: DW_AT_str_offsets_base [DW_FORM_sec_offset] (0x00000008)
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000002) string = "/home/test/CU2")
|
|
;
|
|
; CHECK: Type Unit
|
|
; CHECK-NOT: NULL
|
|
; CHECK: DW_TAG_type_unit
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000000) string = "Type_Unit_1")
|
|
; CHECK-NEXT: DW_AT_str_offsets_base [DW_FORM_sec_offset] (0x0000001c)
|
|
; CHECK-NOT: NULL
|
|
; CHECK: DW_TAG_structure_type
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000001) string = "MyStruct_1")
|
|
;
|
|
; CHECK: Type Unit
|
|
; CHECK-NOT: NULL
|
|
; CHECK: DW_TAG_type_unit
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000000) string = "Type_Unit_2")
|
|
; CHECK-NEXT: DW_AT_str_offsets_base [DW_FORM_sec_offset] (0x0000001c)
|
|
; CHECK-NOT: NULL
|
|
; CHECK: DW_TAG_structure_type
|
|
; CHECK-NEXT: DW_AT_name [DW_FORM_strx] ( indexed (00000001) string = "MyStruct_2")
|
|
|
|
; Verify the correct offets of the compile and type units contributions in the
|
|
; index tables.
|
|
|
|
; CHECK: .debug_cu_index contents:
|
|
; CHECK-NOT: contents:
|
|
; CHECK: 1 0xddeeaaddbbaabbee [{{0x[0-9a-f]*, 0x[0-9a-f]*}}) [{{0x[0-9a-f]*, 0x[0-9a-f]*}})
|
|
; CHECK-SAME: [0x00000000
|
|
; CHECK-NEXT: 2 0xff00ffeeffaaff00 [{{0x[0-9a-f]*, 0x[0-9a-f]*}}) [{{0x[0-9a-f]*, 0x[0-9a-f]*}})
|
|
; CHECK-SAME: [0x00000024
|
|
|
|
; CHECK: .debug_tu_index contents:
|
|
; CHECK-NOT: contents:
|
|
; CHECK: 1 0xeeaaddbbaabbeedd [{{0x[0-9a-f]*, 0x[0-9a-f]*}}) [{{0x[0-9a-f]*, 0x[0-9a-f]*}})
|
|
; CHECK-SAME: [0x00000000
|
|
; CHECK-NEXT: 2 0x00ffeeffaaff00ff [{{0x[0-9a-f]*, 0x[0-9a-f]*}}) [{{0x[0-9a-f]*, 0x[0-9a-f]*}})
|
|
; CHECK: [0x00000024
|