Arm: Fix performance issue with thumb-2 tailcalls
[deliverable/binutils-gdb.git] / ld / testsuite / ld-arm / ifunc-2.dd
CommitLineData
34e77a92
RS
1
2.*
3
4
5Disassembly of section \.iplt:
6
700009000 <f7-0x3c>:
8#------------------------------------------------------------------------------
9#------ f1's .iplt entry
10#------------------------------------------------------------------------------
a415b1cd
JB
11 9000: e28fc600 add ip, pc, #0, 12
12 9004: e28cca08 add ip, ip, #8, 20 ; 0x8000
34e77a92
RS
13 9008: e5bcf004 ldr pc, \[ip, #4\]!
14#------------------------------------------------------------------------------
15#------ f2's .iplt entry
16#------------------------------------------------------------------------------
a415b1cd 17 900c: e28fc600 add ip, pc, #0, 12
34e77a92
RS
18 9010: e28cca07 add ip, ip, #28672 ; 0x7000
19 9014: e5bcfffc ldr pc, \[ip, #4092\]! ; 0xffc
20#------------------------------------------------------------------------------
21#------ thumb entry to f3's .iplt entry
22#------------------------------------------------------------------------------
23 9018: 4778 bx pc
b4e87f2c 24 901a: e7fd b.n .+ <.+>
34e77a92
RS
25#------------------------------------------------------------------------------
26#------ f3's .iplt entry
27#------------------------------------------------------------------------------
a415b1cd 28 901c: e28fc600 add ip, pc, #0, 12
34e77a92
RS
29 9020: e28cca07 add ip, ip, #28672 ; 0x7000
30 9024: e5bcfff0 ldr pc, \[ip, #4080\]! ; 0xff0
31#------------------------------------------------------------------------------
32#------ thumb entry to f4's .iplt entry
33#------------------------------------------------------------------------------
34 9028: 4778 bx pc
b4e87f2c 35 902a: e7fd b.n .+ <.+>
34e77a92
RS
36#------------------------------------------------------------------------------
37#------ f4's .iplt entry
38#------------------------------------------------------------------------------
a415b1cd 39 902c: e28fc600 add ip, pc, #0, 12
34e77a92
RS
40 9030: e28cca07 add ip, ip, #28672 ; 0x7000
41 9034: e5bcffe4 ldr pc, \[ip, #4068\]! ; 0xfe4
42#------------------------------------------------------------------------------
43#------ thumb entry to f7
44#------------------------------------------------------------------------------
45 9038: 4778 bx pc
b4e87f2c 46 903a: e7fd b.n .+ <.+>
34e77a92
RS
47
480000903c <f7>:
a415b1cd 49 903c: e28fc600 add ip, pc, #0, 12
34e77a92
RS
50 9040: e28cca07 add ip, ip, #28672 ; 0x7000
51 9044: e5bcffd8 ldr pc, \[ip, #4056\]! ; 0xfd8
52
5300009048 <f5>:
a415b1cd 54 9048: e28fc600 add ip, pc, #0, 12
34e77a92
RS
55 904c: e28cca07 add ip, ip, #28672 ; 0x7000
56 9050: e5bcffd0 ldr pc, \[ip, #4048\]! ; 0xfd0
57#------------------------------------------------------------------------------
58#------ thumb entry to f8
59#------------------------------------------------------------------------------
60 9054: 4778 bx pc
b4e87f2c 61 9056: e7fd b.n .+ <.+>
34e77a92
RS
62
6300009058 <f8>:
a415b1cd 64 9058: e28fc600 add ip, pc, #0, 12
34e77a92
RS
65 905c: e28cca07 add ip, ip, #28672 ; 0x7000
66 9060: e5bcffc4 ldr pc, \[ip, #4036\]! ; 0xfc4
67
6800009064 <f6>:
a415b1cd 69 9064: e28fc600 add ip, pc, #0, 12
34e77a92
RS
70 9068: e28cca07 add ip, ip, #28672 ; 0x7000
71 906c: e5bcffbc ldr pc, \[ip, #4028\]! ; 0xfbc
72
73Disassembly of section \.text:
74
750000a000 <f1>:
76 a000: e1a0f00e mov pc, lr
77
780000a004 <f2>:
79 a004: 46f7 mov pc, lr
80 \.\.\.
81
820000a008 <f3>:
83 a008: e1a0f00e mov pc, lr
84
850000a00c <f4>:
86 a00c: 46f7 mov pc, lr
9081b64d 87 a00e: 0000 .short 0x0000
34e77a92
RS
88 a010: e1a0f00e mov pc, lr
89 a014: 46f7 mov pc, lr
9081b64d 90 a016: 0000 .short 0x0000
34e77a92
RS
91 a018: e1a0f00e mov pc, lr
92 a01c: 46f7 mov pc, lr
93 \.\.\.
94
950000a020 <_start>:
96 a020: eb0017f6 bl 10000 <foo>
97 a024: ea0017f5 b 10000 <foo>
98 a028: 0a0017f4 beq 10000 <foo>
99 a02c: e59f4014 ldr r4, \[pc, #20\] ; a048 <_start\+0x28>
100 a030: e59f4014 ldr r4, \[pc, #20\] ; a04c <_start\+0x2c>
101 a034: e59f4014 ldr r4, \[pc, #20\] ; a050 <_start\+0x30>
102 a038: e59f4014 ldr r4, \[pc, #20\] ; a054 <_start\+0x34>
103 a03c: e59f5014 ldr r5, \[pc, #20\] ; a058 <_start\+0x38>
104 a040: e3004000 movw r4, #0
105 a044: e3404001 movt r4, #1
106#------------------------------------------------------------------------------
107#------ foo
108#------------------------------------------------------------------------------
109 a048: 00010000 \.word 0x00010000
110#------------------------------------------------------------------------------
111#------ PC-relative offset of foo
112#------------------------------------------------------------------------------
113 a04c: 00005fb4 \.word 0x00005fb4
114#------------------------------------------------------------------------------
115#------ GP-relative offset of foo
116#------------------------------------------------------------------------------
117 a050: fffff000 \.word 0xfffff000
118#------------------------------------------------------------------------------
119#------ .got offset for foo
120#------------------------------------------------------------------------------
121 a054: 00000040 \.word 0x00000040
122#------------------------------------------------------------------------------
123#------ PC-relative offset of .got entry for foo
124#------------------------------------------------------------------------------
125 a058: 00006fd4 \.word 0x00006fd4
126#------------------------------------------------------------------------------
127#------ f1's .iplt entry
128#------------------------------------------------------------------------------
129 a05c: ebfffbe7 bl 9000 <f7-0x3c>
130#------------------------------------------------------------------------------
131#------ f1's .iplt entry
132#------------------------------------------------------------------------------
133 a060: eafffbe6 b 9000 <f7-0x3c>
134#------------------------------------------------------------------------------
135#------ f1's .iplt entry
136#------------------------------------------------------------------------------
137 a064: 0afffbe5 beq 9000 <f7-0x3c>
138 a068: e59f4014 ldr r4, \[pc, #20\] ; a084 <_start\+0x64>
139 a06c: e59f4014 ldr r4, \[pc, #20\] ; a088 <_start\+0x68>
140 a070: e59f4014 ldr r4, \[pc, #20\] ; a08c <_start\+0x6c>
141 a074: e59f4014 ldr r4, \[pc, #20\] ; a090 <_start\+0x70>
142 a078: e59f5014 ldr r5, \[pc, #20\] ; a094 <_start\+0x74>
143 a07c: e3094000 movw r4, #36864 ; 0x9000
144 a080: e3404000 movt r4, #0
145#------------------------------------------------------------------------------
146#------ f1's .iplt entry
147#------------------------------------------------------------------------------
148 a084: 00009000 \.word 0x00009000
149#------------------------------------------------------------------------------
150#------ PC-relative offset of f1's .iplt entry
151#------------------------------------------------------------------------------
152 a088: ffffef78 \.word 0xffffef78
153#------------------------------------------------------------------------------
154#------ GP-relative offset of f1's .iplt entry
155#------------------------------------------------------------------------------
156 a08c: ffff8000 \.word 0xffff8000
157#------------------------------------------------------------------------------
158#------ .got offset for f1's .iplt entry
159#------------------------------------------------------------------------------
160 a090: 00000030 \.word 0x00000030
161#------------------------------------------------------------------------------
162#------ PC-relative offset of .got entry for f1's .iplt entry
163#------------------------------------------------------------------------------
164 a094: 00006f9c \.word 0x00006f9c
165#------------------------------------------------------------------------------
166#------ f2's .iplt entry
167#------------------------------------------------------------------------------
168 a098: ebfffbdb bl 900c <f7-0x30>
169#------------------------------------------------------------------------------
170#------ f2's .iplt entry
171#------------------------------------------------------------------------------
172 a09c: eafffbda b 900c <f7-0x30>
173#------------------------------------------------------------------------------
174#------ f2's .iplt entry
175#------------------------------------------------------------------------------
176 a0a0: 0afffbd9 beq 900c <f7-0x30>
177 a0a4: e59f4014 ldr r4, \[pc, #20\] ; a0c0 <_start\+0xa0>
178 a0a8: e59f4014 ldr r4, \[pc, #20\] ; a0c4 <_start\+0xa4>
179 a0ac: e59f4014 ldr r4, \[pc, #20\] ; a0c8 <_start\+0xa8>
180 a0b0: e59f4014 ldr r4, \[pc, #20\] ; a0cc <_start\+0xac>
181 a0b4: e59f5014 ldr r5, \[pc, #20\] ; a0d0 <_start\+0xb0>
182 a0b8: e309400c movw r4, #36876 ; 0x900c
183 a0bc: e3404000 movt r4, #0
184#------------------------------------------------------------------------------
185#------ f2's .iplt entry
186#------------------------------------------------------------------------------
187 a0c0: 0000900c \.word 0x0000900c
188#------------------------------------------------------------------------------
189#------ PC-relative offset of f2's .iplt entry
190#------------------------------------------------------------------------------
191 a0c4: ffffef48 \.word 0xffffef48
192#------------------------------------------------------------------------------
193#------ GP-relative offset of f2's .iplt entry
194#------------------------------------------------------------------------------
195 a0c8: ffff800c \.word 0xffff800c
196#------------------------------------------------------------------------------
197#------ .got offset for f2's .iplt entry
198#------------------------------------------------------------------------------
199 a0cc: 00000034 \.word 0x00000034
200#------------------------------------------------------------------------------
201#------ PC-relative offset of .got entry for f2's .iplt entry
202#------------------------------------------------------------------------------
203 a0d0: 00006f64 \.word 0x00006f64
204 a0d4: ebfffbdb bl 9048 <f5>
205 a0d8: eafffbda b 9048 <f5>
206 a0dc: 0afffbd9 beq 9048 <f5>
207 a0e0: e59f4014 ldr r4, \[pc, #20\] ; a0fc <_start\+0xdc>
208 a0e4: e59f4014 ldr r4, \[pc, #20\] ; a100 <_start\+0xe0>
209 a0e8: e59f4014 ldr r4, \[pc, #20\] ; a104 <_start\+0xe4>
210 a0ec: e59f4014 ldr r4, \[pc, #20\] ; a108 <_start\+0xe8>
211 a0f0: e59f5014 ldr r5, \[pc, #20\] ; a10c <_start\+0xec>
212 a0f4: e3094048 movw r4, #36936 ; 0x9048
213 a0f8: e3404000 movt r4, #0
214#------------------------------------------------------------------------------
215#------ f5
216#------------------------------------------------------------------------------
217 a0fc: 00009048 \.word 0x00009048
218#------------------------------------------------------------------------------
219#------ PC-relative offset of f5
220#------------------------------------------------------------------------------
221 a100: ffffef48 \.word 0xffffef48
222#------------------------------------------------------------------------------
223#------ GP-relative offset of f5
224#------------------------------------------------------------------------------
225 a104: ffff8048 \.word 0xffff8048
226#------------------------------------------------------------------------------
227#------ .got offset for f5
228#------------------------------------------------------------------------------
229 a108: 00000048 \.word 0x00000048
230#------------------------------------------------------------------------------
231#------ PC-relative offset of .got entry for f5
232#------------------------------------------------------------------------------
233 a10c: 00006f3c \.word 0x00006f3c
234 a110: ebfffbd3 bl 9064 <f6>
235 a114: eafffbd2 b 9064 <f6>
236 a118: 0afffbd1 beq 9064 <f6>
237 a11c: e59f4014 ldr r4, \[pc, #20\] ; a138 <_start\+0x118>
238 a120: e59f4014 ldr r4, \[pc, #20\] ; a13c <_start\+0x11c>
239 a124: e59f4014 ldr r4, \[pc, #20\] ; a140 <_start\+0x120>
240 a128: e59f4014 ldr r4, \[pc, #20\] ; a144 <_start\+0x124>
241 a12c: e59f5014 ldr r5, \[pc, #20\] ; a148 <_start\+0x128>
242 a130: e3094064 movw r4, #36964 ; 0x9064
243 a134: e3404000 movt r4, #0
244#------------------------------------------------------------------------------
245#------ f6
246#------------------------------------------------------------------------------
247 a138: 00009064 \.word 0x00009064
248#------------------------------------------------------------------------------
249#------ PC-relative offset of f6
250#------------------------------------------------------------------------------
251 a13c: ffffef28 \.word 0xffffef28
252#------------------------------------------------------------------------------
253#------ GP-relative offset of f6
254#------------------------------------------------------------------------------
255 a140: ffff8064 \.word 0xffff8064
256#------------------------------------------------------------------------------
257#------ .got offset for f6
258#------------------------------------------------------------------------------
259 a144: 00000050 \.word 0x00000050
260#------------------------------------------------------------------------------
261#------ PC-relative offset of .got entry for f6
262#------------------------------------------------------------------------------
263 a148: 00006f08 \.word 0x00006f08
264
2650000a14c <_thumb>:
266 a14c: f005 ff58 bl 10000 <foo>
267 a150: f005 bf56 b\.w 10000 <foo>
268 a154: f005 8754 beq\.w 10000 <foo>
269 a158: 4c04 ldr r4, \[pc, #16\] ; \(a16c <_thumb\+0x20>\)
270 a15a: f8df 4014 ldr\.w r4, \[pc, #20\] ; a170 <_thumb\+0x24>
271 a15e: 4c05 ldr r4, \[pc, #20\] ; \(a174 <_thumb\+0x28>\)
272 a160: 4c05 ldr r4, \[pc, #20\] ; \(a178 <_thumb\+0x2c>\)
273 a162: 4d06 ldr r5, \[pc, #24\] ; \(a17c <_thumb\+0x30>\)
274 a164: f240 0400 movw r4, #0
275 a168: f2c0 0401 movt r4, #1
276#------------------------------------------------------------------------------
277#------ foo
278#------------------------------------------------------------------------------
279 a16c: 00010000 \.word 0x00010000
280#------------------------------------------------------------------------------
281#------ PC-relative offset of foo
282#------------------------------------------------------------------------------
283 a170: 00005e90 \.word 0x00005e90
284#------------------------------------------------------------------------------
285#------ GP-relative offset of foo
286#------------------------------------------------------------------------------
287 a174: fffff000 \.word 0xfffff000
288#------------------------------------------------------------------------------
289#------ .got offset for foo
290#------------------------------------------------------------------------------
291 a178: 00000040 \.word 0x00000040
292#------------------------------------------------------------------------------
293#------ PC-relative offset of .got entry for foo
294#------------------------------------------------------------------------------
295 a17c: 00006eb0 \.word 0x00006eb0
296#------------------------------------------------------------------------------
297#------ f3's .iplt entry
298#------------------------------------------------------------------------------
299 a180: f7fe ef4c blx 901c <f7-0x20>
300#------------------------------------------------------------------------------
301#------ thumb entry to f3's .iplt entry
302#------------------------------------------------------------------------------
303 a184: f7fe bf48 b\.w 9018 <f7-0x24>
304#------------------------------------------------------------------------------
305#------ thumb entry to f3's .iplt entry
306#------------------------------------------------------------------------------
307 a188: f43e af46 beq\.w 9018 <f7-0x24>
308 a18c: 4c04 ldr r4, \[pc, #16\] ; \(a1a0 <_thumb\+0x54>\)
309 a18e: f8df 4014 ldr\.w r4, \[pc, #20\] ; a1a4 <_thumb\+0x58>
310 a192: 4c05 ldr r4, \[pc, #20\] ; \(a1a8 <_thumb\+0x5c>\)
311 a194: 4c05 ldr r4, \[pc, #20\] ; \(a1ac <_thumb\+0x60>\)
312 a196: 4d06 ldr r5, \[pc, #24\] ; \(a1b0 <_thumb\+0x64>\)
313 a198: f249 041c movw r4, #36892 ; 0x901c
314 a19c: f2c0 0400 movt r4, #0
315#------------------------------------------------------------------------------
316#------ f3's .iplt entry
317#------------------------------------------------------------------------------
318 a1a0: 0000901c \.word 0x0000901c
319#------------------------------------------------------------------------------
320#------ PC-relative offset of f3's .iplt entry
321#------------------------------------------------------------------------------
322 a1a4: ffffee78 \.word 0xffffee78
323#------------------------------------------------------------------------------
324#------ GP-relative offset of f3's .iplt entry
325#------------------------------------------------------------------------------
326 a1a8: ffff801c \.word 0xffff801c
327#------------------------------------------------------------------------------
328#------ .got offset for f3's .iplt entry
329#------------------------------------------------------------------------------
330 a1ac: 00000038 \.word 0x00000038
331#------------------------------------------------------------------------------
332#------ PC-relative offset of .got entry for f3's .iplt entry
333#------------------------------------------------------------------------------
334 a1b0: 00006e88 \.word 0x00006e88
335#------------------------------------------------------------------------------
336#------ f4's .iplt entry
337#------------------------------------------------------------------------------
338 a1b4: f7fe ef3a blx 902c <f7-0x10>
339#------------------------------------------------------------------------------
340#------ thumb entry to f4's .iplt entry
341#------------------------------------------------------------------------------
342 a1b8: f7fe bf36 b\.w 9028 <f7-0x14>
343#------------------------------------------------------------------------------
344#------ thumb entry to f4's .iplt entry
345#------------------------------------------------------------------------------
346 a1bc: f43e af34 beq\.w 9028 <f7-0x14>
347 a1c0: 4c04 ldr r4, \[pc, #16\] ; \(a1d4 <_thumb\+0x88>\)
348 a1c2: f8df 4014 ldr\.w r4, \[pc, #20\] ; a1d8 <_thumb\+0x8c>
349 a1c6: 4c05 ldr r4, \[pc, #20\] ; \(a1dc <_thumb\+0x90>\)
350 a1c8: 4c05 ldr r4, \[pc, #20\] ; \(a1e0 <_thumb\+0x94>\)
351 a1ca: 4d06 ldr r5, \[pc, #24\] ; \(a1e4 <_thumb\+0x98>\)
352 a1cc: f249 042c movw r4, #36908 ; 0x902c
353 a1d0: f2c0 0400 movt r4, #0
354#------------------------------------------------------------------------------
355#------ f4's .iplt entry
356#------------------------------------------------------------------------------
357 a1d4: 0000902c \.word 0x0000902c
358#------------------------------------------------------------------------------
359#------ PC-relative offset of f4's .iplt entry
360#------------------------------------------------------------------------------
361 a1d8: ffffee54 \.word 0xffffee54
362#------------------------------------------------------------------------------
363#------ GP-relative offset of f4's .iplt entry
364#------------------------------------------------------------------------------
365 a1dc: ffff802c \.word 0xffff802c
366#------------------------------------------------------------------------------
367#------ .got offset for f4's .iplt entry
368#------------------------------------------------------------------------------
369 a1e0: 0000003c \.word 0x0000003c
370#------------------------------------------------------------------------------
371#------ PC-relative offset of .got entry for f4's .iplt entry
372#------------------------------------------------------------------------------
373 a1e4: 00006e58 \.word 0x00006e58
374 a1e8: f7fe ef28 blx 903c <f7>
375#------------------------------------------------------------------------------
376#------ thumb entry to f7
377#------------------------------------------------------------------------------
378 a1ec: f7fe bf24 b\.w 9038 <f7-0x4>
379#------------------------------------------------------------------------------
380#------ thumb entry to f7
381#------------------------------------------------------------------------------
382 a1f0: f43e af22 beq\.w 9038 <f7-0x4>
383 a1f4: 4c04 ldr r4, \[pc, #16\] ; \(a208 <_thumb\+0xbc>\)
384 a1f6: f8df 4014 ldr\.w r4, \[pc, #20\] ; a20c <_thumb\+0xc0>
385 a1fa: 4c05 ldr r4, \[pc, #20\] ; \(a210 <_thumb\+0xc4>\)
386 a1fc: 4c05 ldr r4, \[pc, #20\] ; \(a214 <_thumb\+0xc8>\)
387 a1fe: 4d06 ldr r5, \[pc, #24\] ; \(a218 <_thumb\+0xcc>\)
388 a200: f249 043c movw r4, #36924 ; 0x903c
389 a204: f2c0 0400 movt r4, #0
390#------------------------------------------------------------------------------
391#------ f7
392#------------------------------------------------------------------------------
393 a208: 0000903c \.word 0x0000903c
394#------------------------------------------------------------------------------
395#------ PC-relative offset of f7
396#------------------------------------------------------------------------------
397 a20c: ffffee30 \.word 0xffffee30
398#------------------------------------------------------------------------------
399#------ GP-relative offset of f7
400#------------------------------------------------------------------------------
401 a210: ffff803c \.word 0xffff803c
402#------------------------------------------------------------------------------
403#------ .got offset for f7
404#------------------------------------------------------------------------------
405 a214: 00000044 \.word 0x00000044
406#------------------------------------------------------------------------------
407#------ PC-relative offset of .got entry for f7
408#------------------------------------------------------------------------------
409 a218: 00006e2c \.word 0x00006e2c
410 a21c: f7fe ef1c blx 9058 <f8>
411#------------------------------------------------------------------------------
412#------ thumb entry to f8
413#------------------------------------------------------------------------------
414 a220: f7fe bf18 b\.w 9054 <f5\+0xc>
415#------------------------------------------------------------------------------
416#------ thumb entry to f8
417#------------------------------------------------------------------------------
418 a224: f43e af16 beq\.w 9054 <f5\+0xc>
419 a228: 4c04 ldr r4, \[pc, #16\] ; \(a23c <_thumb\+0xf0>\)
420 a22a: f8df 4014 ldr\.w r4, \[pc, #20\] ; a240 <_thumb\+0xf4>
421 a22e: 4c05 ldr r4, \[pc, #20\] ; \(a244 <_thumb\+0xf8>\)
422 a230: 4c05 ldr r4, \[pc, #20\] ; \(a248 <_thumb\+0xfc>\)
423 a232: 4d06 ldr r5, \[pc, #24\] ; \(a24c <_thumb\+0x100>\)
424 a234: f249 0458 movw r4, #36952 ; 0x9058
425 a238: f2c0 0400 movt r4, #0
426#------------------------------------------------------------------------------
427#------ f8
428#------------------------------------------------------------------------------
429 a23c: 00009058 \.word 0x00009058
430#------------------------------------------------------------------------------
431#------ PC-relative offset of f8
432#------------------------------------------------------------------------------
433 a240: ffffee18 \.word 0xffffee18
434#------------------------------------------------------------------------------
435#------ GP-relative offset of f8
436#------------------------------------------------------------------------------
437 a244: ffff8058 \.word 0xffff8058
438#------------------------------------------------------------------------------
439#------ .got offset for f8
440#------------------------------------------------------------------------------
441 a248: 0000004c \.word 0x0000004c
442#------------------------------------------------------------------------------
443#------ PC-relative offset of .got entry for f8
444#------------------------------------------------------------------------------
445 a24c: 00006e00 \.word 0x00006e00
This page took 0.520285 seconds and 4 git commands to generate.