xref: /aosp_15_r20/external/llvm/test/tools/dsymutil/basic-linking.test (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard WorkerRUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 | FileCheck %s
2*9880d681SAndroid Build Coastguard WorkerRUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic-lto.macho.x86_64 | FileCheck %s --check-prefix=CHECK-LTO
3*9880d681SAndroid Build Coastguard WorkerRUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK-ARCHIVE
4*9880d681SAndroid Build Coastguard WorkerRUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 %p/Inputs/basic-lto.macho.x86_64 %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-LTO --check-prefix=CHECK-ARCHIVE
5*9880d681SAndroid Build Coastguard Worker
6*9880d681SAndroid Build Coastguard WorkerThis test check the basic Dwarf linking process through the debug dumps.
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker================================= Simple link ================================
9*9880d681SAndroid Build Coastguard WorkerCHECK: DEBUG MAP OBJECT: {{.*}}basic1.macho.x86_64.o
10*9880d681SAndroid Build Coastguard WorkerCHECK: Input compilation unit:
11*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: TAG_compile_unit
12*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: TAG
13*9880d681SAndroid Build Coastguard WorkerCHECK: AT_name {{.*}}basic1.c
14*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
15*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _main 	0000000000000000 => 0000000100000ea0
16*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_subprogram
17*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name{{.*}}"main"
18*9880d681SAndroid Build Coastguard Worker
19*9880d681SAndroid Build Coastguard WorkerCHECK: DEBUG MAP OBJECT: {{.*}}basic2.macho.x86_64.o
20*9880d681SAndroid Build Coastguard WorkerCHECK: Input compilation unit:
21*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: TAG_compile_unit
22*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: TAG
23*9880d681SAndroid Build Coastguard WorkerCHECK: AT_name {{.*}}basic2.c
24*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
25*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _private_int 	0000000000000560 => 0000000100001008
26*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_variable
27*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name {{.*}}"private_int"
28*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
29*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _baz 	0000000000000310 => 0000000100001000
30*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_variable
31*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name {{.*}}"baz"
32*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
33*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _foo 	0000000000000020 => 0000000100000ed0
34*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_subprogram
35*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name {{.*}}"foo"
36*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
37*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _inc 	0000000000000070 => 0000000100000f20
38*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_subprogram
39*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name {{.*}}"inc"
40*9880d681SAndroid Build Coastguard Worker
41*9880d681SAndroid Build Coastguard WorkerCHECK: DEBUG MAP OBJECT: {{.*}}basic3.macho.x86_64.o
42*9880d681SAndroid Build Coastguard WorkerCHECK: Input compilation unit:
43*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: TAG_compile_unit
44*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: TAG
45*9880d681SAndroid Build Coastguard WorkerCHECK: AT_name {{.*}}basic3.c
46*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
47*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _val 	ffffffffffffffff => 0000000100001004
48*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_variable
49*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name {{.*}}"val"
50*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
51*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _bar 	0000000000000020 => 0000000100000f40
52*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_subprogram
53*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name {{.*}}"bar"
54*9880d681SAndroid Build Coastguard WorkerCHECK-NOT: Found valid debug map entry
55*9880d681SAndroid Build Coastguard WorkerCHECK: Found valid debug map entry: _inc 	0000000000000070 => 0000000100000f90
56*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT: DW_TAG_subprogram
57*9880d681SAndroid Build Coastguard WorkerCHECK-NEXT:   DW_AT_name {{.*}}"inc")
58*9880d681SAndroid Build Coastguard Worker
59*9880d681SAndroid Build Coastguard Worker
60*9880d681SAndroid Build Coastguard Worker================================= LTO link ================================
61*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: DEBUG MAP OBJECT: {{.*}}basic-lto.macho.x86_64.o
62*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Input compilation unit:
63*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: TAG_compile_unit
64*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: TAG
65*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: AT_name {{.*}}basic1.c
66*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Input compilation unit:
67*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: TAG_compile_unit
68*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: TAG
69*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: AT_name {{.*}}basic2.c
70*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Input compilation unit:
71*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: TAG_compile_unit
72*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: TAG
73*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: AT_name {{.*}}basic3.c
74*9880d681SAndroid Build Coastguard Worker
75*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: Found valid debug map entry
76*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Found valid debug map entry: _main 	0000000000000000 => 0000000100000f40
77*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: DW_TAG_subprogram
78*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT:   DW_AT_name {{.*}}"main"
79*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: Found valid debug map entry
80*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Found valid debug map entry: _private_int 	00000000000008e8 => 0000000100001008
81*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: DW_TAG_variable
82*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT:   DW_AT_name {{.*}}"private_int"
83*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: Found valid debug map entry
84*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Found valid debug map entry: _baz 	0000000000000658 => 0000000100001000
85*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: DW_TAG_variable
86*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT:   DW_AT_name {{.*}} "baz"
87*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: Found valid debug map entry
88*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Found valid debug map entry: _foo 	0000000000000010 => 0000000100000f50
89*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: DW_TAG_subprogram
90*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT:   DW_AT_name {{.*}}"foo"
91*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: Found valid debug map entry
92*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Found valid debug map entry: _val 	00000000000008ec => 0000000100001004
93*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: DW_TAG_variable
94*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT:   DW_AT_name {{.*}}"val"
95*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NOT: Found valid debug map entry
96*9880d681SAndroid Build Coastguard WorkerCHECK-LTO: Found valid debug map entry: _bar 	0000000000000050 => 0000000100000f90
97*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT: DW_TAG_subprogram
98*9880d681SAndroid Build Coastguard WorkerCHECK-LTO-NEXT:   DW_AT_name {{.*}}"bar"
99*9880d681SAndroid Build Coastguard Worker
100*9880d681SAndroid Build Coastguard Worker
101*9880d681SAndroid Build Coastguard Worker================================= Archive link ================================
102*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: DEBUG MAP OBJECT: {{.*}}basic1.macho.x86_64.o
103*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Input compilation unit:
104*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: TAG_compile_unit
105*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: TAG
106*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: AT_name {{.*}}basic1.c
107*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
108*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _main 	0000000000000000 => 0000000100000ea0
109*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_subprogram
110*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name{{.*}}"main"
111*9880d681SAndroid Build Coastguard Worker
112*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: DEBUG MAP OBJECT: {{.*}}libbasic.a(basic2.macho.x86_64.o)
113*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Input compilation unit:
114*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: TAG_compile_unit
115*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: TAG
116*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: AT_name {{.*}}basic2.c
117*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
118*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _private_int 	0000000000000560 => 0000000100001004
119*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_variable
120*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name {{.*}}"private_int"
121*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
122*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _baz 	0000000000000310 => 0000000100001000
123*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_variable
124*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name {{.*}}"baz"
125*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
126*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _foo 	0000000000000020 => 0000000100000ed0
127*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_subprogram
128*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name {{.*}}"foo"
129*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
130*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _inc 	0000000000000070 => 0000000100000f20
131*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_subprogram
132*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name {{.*}}"inc"
133*9880d681SAndroid Build Coastguard Worker
134*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: DEBUG MAP OBJECT: {{.*}}libbasic.a(basic3.macho.x86_64.o)
135*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Input compilation unit:
136*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: TAG_compile_unit
137*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: TAG
138*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: AT_name {{.*}}basic3.c
139*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
140*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _val 	ffffffffffffffff => 0000000100001008
141*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_variable
142*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name {{.*}}"val"
143*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
144*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _bar 	0000000000000020 => 0000000100000f40
145*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_subprogram
146*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name {{.*}}"bar"
147*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NOT: Found valid debug map entry
148*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE: Found valid debug map entry: _inc 	0000000000000070 => 0000000100000f90
149*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT: DW_TAG_subprogram
150*9880d681SAndroid Build Coastguard WorkerCHECK-ARCHIVE-NEXT:   DW_AT_name {{.*}}"inc")
151