@@ -6,38 +6,29 @@ RUN: llvm-dwp a.dwo b.dwo -o ab.dwp
6
6
RUN: llvm-dwp c.dwo ab.dwp -o merged.dwp
7
7
RUN: llvm-dwarfdump -v merged.dwp | FileCheck --check-prefix=CHECK %s
8
8
9
- CHECK-LABEL: .debug_abbrev.dwo contents:
10
- CHECK-LABEL: Abbrev table for offset:
11
- CHECK: 0x0000[[CAOFF:.*]]
12
- CHECK-LABEL: Abbrev table for offset:
13
- CHECK: 0x0000[[AAOFF:.*]]
14
- CHECK-LABEL: Abbrev table for offset:
15
- CHECK: 0x0000[[BAOFF:.*]]
16
-
17
- CHECK: .debug_info.dwo contents:
18
- CHECK: 0x[[#%.8x,COFF:]]:
19
- CHECK-LABEL: Compile Unit: length = {{.*}}, format = DWARF32, version = 0x0005, unit_type = DW_UT_split_compile, abbr_offset =
20
- CHECK: 0x[[CAOFF]], addr_size = 0x08, DWO_id = 0x[[DWOC:.*]] (next unit at 0x[[#%.8x,BOFF:]])
21
- CHECK: [[#BOFF]]:
22
- CHECK-LABEL: Compile Unit: length = {{.*}}, format = DWARF32, version = 0x0005, unit_type = DW_UT_split_compile, abbr_offset =
23
- CHECK: 0x[[BAOFF]], addr_size = 0x08, DWO_id = 0x[[DWOB:.*]] (next unit at 0x[[#%.8x,AOFF:]])
24
- CHECK: [[#AOFF]]:
25
- CHECK-LABEL: Compile Unit: length = {{.*}}, format = DWARF32, version = 0x0005, unit_type = DW_UT_split_compile, abbr_offset =
26
- CHECK: 0x[[AAOFF]], addr_size = 0x08, DWO_id = 0x[[DWOA:.*]] (next unit at 0x[[#%.8x,XOFF:]])
27
-
28
- CHECK-LABEL: .debug_cu_index contents:
29
- CHECK: Index Signature INFO ABBREV STR_OFFSETS
30
- CHECK-DAG: [[DWOC]] [0x00000000[[#COFF]], 0x00000000[[#BOFF]]) [0x0000[[CAOFF]], 0x0000[[AAOFF]]) [0x00000000, 0x00000024)
31
- CHECK-DAG: [[DWOB]] [0x00000000[[#BOFF]], 0x00000000[[#AOFF]]) [0x0000[[BAOFF]],
32
- CHECK-DAG: [[DWOA]] [0x00000000[[#AOFF]], 0x00000000[[#XOFF]]) [0x0000[[AAOFF]],
33
9
34
10
CHECK-LABEL: .debug_str_offsets.dwo contents:
35
11
CHECK: Contribution size = 32, Format = DWARF32, Version = 5
12
+ CHECK: 0x00000008: 00000000 "_Z1cv"
13
+ CHECK: 0x0000000c: 00000006 "c"
14
+ CHECK: 0x00000010: 00000008 "int"
15
+ CHECK: 0x00000014: 0000000c "baz"
16
+ CHECK: 0x00000018: 00000010 ""
17
+ CHECK: 0x0000001c: 00000011 "c.cpp"
18
+ CHECK: 0x00000020: 00000017 "c.dwo"
36
19
CHECK: Contribution size = 24, Format = DWARF32, Version = 5
20
+ CHECK: 0x0000002c: 0000001d "a"
21
+ CHECK: 0x00000030: 0000001f "foo"
22
+ CHECK: 0x00000034: 00000010 ""
23
+ CHECK: 0x00000038: 00000023 "a.cpp"
24
+ CHECK: 0x0000003c: 00000029 "a.dwo"
37
25
CHECK: Contribution size = 28, Format = DWARF32, Version = 5
38
-
39
- DWP from a DWO (c.dwo) and a DWP (ab.dwp, created from a.dwo and b.dwo)
40
- Make sure the entries for A and B are updated correctly when read/processed from ab.dwp
26
+ CHECK: 0x00000048: 0000002f "_Z1b3bar"
27
+ CHECK: 0x0000004c: 00000038 "b"
28
+ CHECK: 0x00000050: 0000003a "bar"
29
+ CHECK: 0x00000054: 00000010 ""
30
+ CHECK: 0x00000058: 0000003e "b.cpp"
31
+ CHECK: 0x0000005c: 00000044 "b.dwo"
41
32
;--- a.cpp
42
33
struct foo { };
43
34
foo a;
@@ -50,11 +41,11 @@ Make sure the entries for A and B are updated correctly when read/processed from
50
41
baz c() {
51
42
}
52
43
;--- gen
53
- clang-18 --target=x86_64-linux -g3 -gsplit-dwarf -S -emit-llvm -gsplit-dwarf a.cpp -o -
44
+ clang --target=x86_64-linux -g3 -S -emit-llvm -gsplit-dwarf a.cpp -o -
54
45
echo '#--- b.ll'
55
- clang-18 --target=x86_64-linux -g3 -gsplit-dwarf -S -emit-llvm -gsplit-dwarf b.cpp -o -
46
+ clang --target=x86_64-linux -g3 -S -emit-llvm -gsplit-dwarf b.cpp -o -
56
47
echo '#--- c.ll'
57
- clang-18 --target=x86_64-linux -g3 -gsplit-dwarf -S -emit-llvm -gsplit-dwarf c.cpp -o -
48
+ clang --target=x86_64-linux -g3 -S -emit-llvm -gsplit-dwarf c.cpp -o -
58
49
;--- a.ll
59
50
; ModuleID = 'a.cpp'
60
51
source_filename = "a.cpp"
0 commit comments