xref: /llvm-project/bolt/test/AArch64/Inputs/plt-gnu-ld.yaml (revision 6820cb2dd5cfa103953373b5a00b8e59365bad7f)
1--- !ELF
2FileHeader:
3  Class:           ELFCLASS64
4  Data:            ELFDATA2LSB
5  Type:            ET_EXEC
6  Machine:         EM_AARCH64
7  Entry:           0x400510
8ProgramHeaders:
9  - Type:            PT_PHDR
10    Flags:           [ PF_R ]
11    VAddr:           0x400040
12    Align:           0x8
13  - Type:            PT_INTERP
14    Flags:           [ PF_R ]
15    FirstSec:        .interp
16    LastSec:         .interp
17    VAddr:           0x400238
18  - Type:            PT_LOAD
19    Flags:           [ PF_X, PF_R ]
20    FirstSec:        .interp
21    LastSec:         .bss
22    VAddr:           0x400000
23    Align:           0x10000
24  - Type:            PT_DYNAMIC
25    Flags:           [ PF_W, PF_R ]
26    FirstSec:        .dynamic
27    LastSec:         .dynamic
28    VAddr:           0x410E08
29    Align:           0x8
30Sections:
31  - Name:            .interp
32    Type:            SHT_PROGBITS
33    Flags:           [ SHF_ALLOC ]
34    Address:         0x400238
35    AddressAlign:    0x1
36    Content:         2F6C69622F6C642D6C696E75782D616172636836342E736F2E3100
37  - Name:            .dynsym
38    Type:            SHT_DYNSYM
39    Flags:           [ SHF_ALLOC ]
40    Address:         0x4002A0
41    Link:            .dynstr
42    AddressAlign:    0x8
43  - Name:            .dynstr
44    Type:            SHT_STRTAB
45    Flags:           [ SHF_ALLOC ]
46    Address:         0x400348
47    AddressAlign:    0x1
48  - Name:            .rela.dyn
49    Type:            SHT_RELA
50    Flags:           [ SHF_ALLOC ]
51    Address:         0x4003C8
52    Link:            .dynsym
53    AddressAlign:    0x8
54    Relocations:
55      - Offset:          0x410FE0
56        Symbol:          __gmon_start__
57        Type:            R_AARCH64_GLOB_DAT
58  - Name:            .rela.plt
59    Type:            SHT_RELA
60    Flags:           [ SHF_ALLOC, SHF_INFO_LINK ]
61    Address:         0x4003E0
62    Link:            .dynsym
63    AddressAlign:    0x8
64    Info:            .got.plt
65    Relocations:
66      - Offset:          0x411000
67        Symbol:          memcpy
68        Type:            R_AARCH64_JUMP_SLOT
69      - Offset:          0x411008
70        Symbol:          __libc_start_main
71        Type:            R_AARCH64_JUMP_SLOT
72      - Offset:          0x411010
73        Symbol:          memset
74        Type:            R_AARCH64_JUMP_SLOT
75      - Offset:          0x411018
76        Symbol:          __gmon_start__
77        Type:            R_AARCH64_JUMP_SLOT
78      - Offset:          0x411020
79        Symbol:          abort
80        Type:            R_AARCH64_JUMP_SLOT
81      - Offset:          0x411028
82        Symbol:          printf
83        Type:            R_AARCH64_JUMP_SLOT
84  - Name:            .plt
85    Type:            SHT_PROGBITS
86    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
87    Address:         0x400490
88    AddressAlign:    0x10
89    EntSize:         0x10
90    Content:         F07BBFA99000009011FE47F910E23F9120021FD61F2003D51F2003D51F2003D5900000B0110240F91002009120021FD6900000B0110640F91022009120021FD6900000B0110A40F91042009120021FD6900000B0110E40F91062009120021FD6900000B0111240F91082009120021FD6900000B0111640F910A2009120021FD6
91  - Name:            .text
92    Type:            SHT_PROGBITS
93    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
94    Address:         0x400510
95    AddressAlign:    0x8
96    Content:         1D0080D21E0080D2E50300AAE10340F9E2230091E603009100000090002015910300009063201B910400009084201D91E0FFFF97EBFFFF972F0000148000009000F047F9400000B4E2FFFF17C0035FD6800000B000000191810000B0210001913F0000EBC00000540100009021B443F9610000B4F00301AA00021FD6C0035FD6800000B000000191810000B021000191210000CB22FC7FD3410C818BFF0781EB21FC4193C00000540200009042B843F9620000B4F00302AA00021FD6C0035FD6FD7BBEA9FD030091F30B00F9930000B06002413980000035DEFFFF972000805260020139F30B40F9FD7BC2A8C0035FD6E4FFFF17FF8300D1FD7B01A9FD430091BFC31FB8E1230091E8DD9752A8D5BB72E80300B9E80B00B9E0130091FF0700B9880000B00900009029C11291092500F9082540F9820080D200013FD6E90340B9E80740B90801096BA00000540100001428008052A8C31FB814000014880000B00900009029411391092900F9082940F9E0230091E1031F2A820080D200013FD6E80B40B9A80000340100001428008052A8C31FB8050000140000009000E01D9194FFFF9701000014A0C35FB8FD7B41A9FF830091C0035FD6FD7BBCA9FD030091F35301A99400009094023891F55B02A995000090B5E23791940215CBF603002AF76303A9F70301AAF80302AA5DFFFF97FF0F94EB6001005494FE4393130080D2A37A73F8E20318AA73060091E10317AAE003162A60003FD69F0213EB21FFFF54F35341A9F55B42A9F76343A9FD7BC4A8C0035FD61F2003D5C0035FD6
97  - Name:            .rodata
98    Type:            SHT_PROGBITS
99    Flags:           [ SHF_ALLOC ]
100    Address:         0x400760
101    AddressAlign:    0x8
102    Content:         0100020000000000000000000000000000000000000000005465737420636F6D706C657465640A00
103  - Name:            .dynamic
104    Type:            SHT_DYNAMIC
105    Flags:           [ SHF_WRITE, SHF_ALLOC ]
106    Address:         0x410E08
107    Link:            .dynstr
108    AddressAlign:    0x8
109    Entries:
110      - Tag:             DT_NEEDED
111        Value:           0x1
112      - Tag:             DT_STRTAB
113        Value:           0x400348
114      - Tag:             DT_SYMTAB
115        Value:           0x4002A0
116      - Tag:             DT_STRSZ
117        Value:           0x52
118      - Tag:             DT_SYMENT
119        Value:           0x18
120      - Tag:             DT_DEBUG
121        Value:           0x0
122      - Tag:             DT_PLTGOT
123        Value:           0x410FE8
124      - Tag:             DT_PLTRELSZ
125        Value:           0x90
126      - Tag:             DT_PLTREL
127        Value:           0x7
128      - Tag:             DT_JMPREL
129        Value:           0x4003E0
130      - Tag:             DT_RELA
131        Value:           0x4003C8
132      - Tag:             DT_RELASZ
133        Value:           0x18
134      - Tag:             DT_RELAENT
135        Value:           0x18
136      - Tag:             DT_NULL
137        Value:           0x0
138  - Name:            .got
139    Type:            SHT_PROGBITS
140    Flags:           [ SHF_WRITE, SHF_ALLOC ]
141    Address:         0x410FD8
142    AddressAlign:    0x8
143    EntSize:         0x8
144    Content:         '080E4100000000000000000000000000'
145  - Name:            .got.plt
146    Type:            SHT_PROGBITS
147    Flags:           [ SHF_WRITE, SHF_ALLOC ]
148    Address:         0x410FE8
149    AddressAlign:    0x8
150    EntSize:         0x8
151    Content:         '000000000000000000000000000000000000000000000000900440000000000090044000000000009004400000000000900440000000000090044000000000009004400000000000'
152  - Name:            .tm_clone_table
153    Type:            SHT_PROGBITS
154    Flags:           [ SHF_WRITE, SHF_ALLOC ]
155    Address:         0x411040
156    AddressAlign:    0x8
157  - Name:            .bss
158    Type:            SHT_NOBITS
159    Flags:           [ SHF_WRITE, SHF_ALLOC ]
160    Address:         0x411040
161    AddressAlign:    0x8
162    Size:            0x18
163  - Name:            .rela.text
164    Type:            SHT_RELA
165    Flags:           [ SHF_INFO_LINK ]
166    Link:            .symtab
167    AddressAlign:    0x8
168    Info:            .text
169    Relocations:
170      - Offset:          0x400528
171        Symbol:          .text
172        Type:            R_AARCH64_ADR_PREL_PG_HI21
173        Addend:          56
174      - Offset:          0x40052C
175        Symbol:          .text
176        Type:            R_AARCH64_ADD_ABS_LO12_NC
177        Addend:          56
178      - Offset:          0x400540
179        Symbol:          '__libc_start_main@@GLIBC_2.17'
180        Type:            R_AARCH64_CALL26
181      - Offset:          0x400544
182        Symbol:          'abort@@GLIBC_2.17'
183        Type:            R_AARCH64_CALL26
184      - Offset:          0x400548
185        Symbol:          main
186        Type:            R_AARCH64_JUMP26
187      - Offset:          0x40054C
188        Symbol:          __gmon_start__
189        Type:            R_AARCH64_ADR_GOT_PAGE
190      - Offset:          0x400550
191        Symbol:          __gmon_start__
192        Type:            R_AARCH64_LD64_GOT_LO12_NC
193      - Offset:          0x400558
194        Symbol:          __gmon_start__
195        Type:            R_AARCH64_JUMP26
196      - Offset:          0x400560
197        Symbol:          .tm_clone_table
198        Type:            R_AARCH64_ADR_PREL_PG_HI21
199      - Offset:          0x400564
200        Symbol:          .tm_clone_table
201        Type:            R_AARCH64_ADD_ABS_LO12_NC
202      - Offset:          0x400578
203        Symbol:          .rodata
204        Type:            R_AARCH64_ADR_PREL_PG_HI21
205        Addend:          8
206      - Offset:          0x40057C
207        Symbol:          .rodata
208        Type:            R_AARCH64_LDST64_ABS_LO12_NC
209        Addend:          8
210      - Offset:          0x400590
211        Symbol:          .tm_clone_table
212        Type:            R_AARCH64_ADR_PREL_PG_HI21
213      - Offset:          0x400594
214        Symbol:          .tm_clone_table
215        Type:            R_AARCH64_ADD_ABS_LO12_NC
216      - Offset:          0x4005B8
217        Symbol:          .rodata
218        Type:            R_AARCH64_ADR_PREL_PG_HI21
219        Addend:          16
220      - Offset:          0x4005BC
221        Symbol:          .rodata
222        Type:            R_AARCH64_LDST64_ABS_LO12_NC
223        Addend:          16
224      - Offset:          0x4005DC
225        Symbol:          .bss
226        Type:            R_AARCH64_ADR_PREL_PG_HI21
227      - Offset:          0x4005E0
228        Symbol:          .bss
229        Type:            R_AARCH64_LDST8_ABS_LO12_NC
230      - Offset:          0x4005F0
231        Symbol:          .bss
232        Type:            R_AARCH64_LDST8_ABS_LO12_NC
233      - Offset:          0x400630
234        Symbol:          memcpy_p
235        Type:            R_AARCH64_ADR_PREL_PG_HI21
236      - Offset:          0x400634
237        Symbol:          'memcpy@@GLIBC_2.17'
238        Type:            R_AARCH64_ADR_PREL_PG_HI21
239      - Offset:          0x400638
240        Symbol:          'memcpy@@GLIBC_2.17'
241        Type:            R_AARCH64_ADD_ABS_LO12_NC
242      - Offset:          0x40063C
243        Symbol:          memcpy_p
244        Type:            R_AARCH64_LDST64_ABS_LO12_NC
245      - Offset:          0x400640
246        Symbol:          memcpy_p
247        Type:            R_AARCH64_LDST64_ABS_LO12_NC
248      - Offset:          0x40066C
249        Symbol:          memset_p
250        Type:            R_AARCH64_ADR_PREL_PG_HI21
251      - Offset:          0x400670
252        Symbol:          'memset@@GLIBC_2.17'
253        Type:            R_AARCH64_ADR_PREL_PG_HI21
254      - Offset:          0x400674
255        Symbol:          'memset@@GLIBC_2.17'
256        Type:            R_AARCH64_ADD_ABS_LO12_NC
257      - Offset:          0x400678
258        Symbol:          memset_p
259        Type:            R_AARCH64_LDST64_ABS_LO12_NC
260      - Offset:          0x40067C
261        Symbol:          memset_p
262        Type:            R_AARCH64_LDST64_ABS_LO12_NC
263      - Offset:          0x4006A8
264        Symbol:          .rodata
265        Type:            R_AARCH64_ADR_PREL_PG_HI21
266        Addend:          24
267      - Offset:          0x4006AC
268        Symbol:          .rodata
269        Type:            R_AARCH64_ADD_ABS_LO12_NC
270        Addend:          24
271      - Offset:          0x4006B0
272        Symbol:          'printf@@GLIBC_2.17'
273        Type:            R_AARCH64_CALL26
274  - Name:            .rela.rodata
275    Type:            SHT_RELA
276    Flags:           [ SHF_INFO_LINK ]
277    Link:            .symtab
278    AddressAlign:    0x8
279    Info:            .rodata
280    Relocations:
281  - Type:            SectionHeaderTable
282    Sections:
283      - Name:            .interp
284      - Name:            .dynsym
285      - Name:            .dynstr
286      - Name:            .rela.dyn
287      - Name:            .rela.plt
288      - Name:            .plt
289      - Name:            .text
290      - Name:            .rela.text
291      - Name:            .rodata
292      - Name:            .rela.rodata
293      - Name:            .dynamic
294      - Name:            .got
295      - Name:            .got.plt
296      - Name:            .tm_clone_table
297      - Name:            .bss
298      - Name:            .symtab
299      - Name:            .strtab
300      - Name:            .shstrtab
301Symbols:
302  - Name:            .interp
303    Type:            STT_SECTION
304    Section:         .interp
305    Value:           0x400238
306  - Name:            .dynsym
307    Type:            STT_SECTION
308    Section:         .dynsym
309    Value:           0x4002A0
310  - Name:            .dynstr
311    Type:            STT_SECTION
312    Section:         .dynstr
313    Value:           0x400348
314  - Name:            .rela.dyn
315    Type:            STT_SECTION
316    Section:         .rela.dyn
317    Value:           0x4003C8
318  - Name:            .rela.plt
319    Type:            STT_SECTION
320    Section:         .rela.plt
321    Value:           0x4003E0
322  - Name:            .plt
323    Type:            STT_SECTION
324    Section:         .plt
325    Value:           0x400490
326  - Name:            .text
327    Type:            STT_SECTION
328    Section:         .text
329    Value:           0x400510
330  - Name:            .rodata
331    Type:            STT_SECTION
332    Section:         .rodata
333    Value:           0x400760
334  - Name:            .dynamic
335    Type:            STT_SECTION
336    Section:         .dynamic
337    Value:           0x410E08
338  - Name:            .got
339    Type:            STT_SECTION
340    Section:         .got
341    Value:           0x410FD8
342  - Name:            .got.plt
343    Type:            STT_SECTION
344    Section:         .got.plt
345    Value:           0x410FE8
346  - Name:            .tm_clone_table
347    Type:            STT_SECTION
348    Section:         .tm_clone_table
349    Value:           0x411040
350  - Name:            .bss
351    Type:            STT_SECTION
352    Section:         .bss
353    Value:           0x411040
354  - Name:            __wrap_main
355    Section:         .text
356    Value:           0x400548
357  - Name:            _DYNAMIC
358    Type:            STT_OBJECT
359    Section:         .dynamic
360    Value:           0x410E08
361  - Name:            _GLOBAL_OFFSET_TABLE_
362    Type:            STT_OBJECT
363    Section:         .got
364    Value:           0x410FD8
365  - Name:            'memcpy@@GLIBC_2.17'
366    Type:            STT_FUNC
367    Binding:         STB_GLOBAL
368    Value:           0x4004B0
369  - Name:            __bss_start__
370    Section:         .bss
371    Binding:         STB_GLOBAL
372    Value:           0x411040
373  - Name:            memcpy_p
374    Type:            STT_OBJECT
375    Section:         .bss
376    Binding:         STB_GLOBAL
377    Value:           0x411048
378    Size:            0x8
379  - Name:            _bss_end__
380    Section:         .bss
381    Binding:         STB_GLOBAL
382    Value:           0x411058
383  - Name:            _edata
384    Section:         .tm_clone_table
385    Binding:         STB_GLOBAL
386    Value:           0x411040
387  - Name:            __bss_end__
388    Section:         .bss
389    Binding:         STB_GLOBAL
390    Value:           0x411058
391  - Name:            '__libc_start_main@@GLIBC_2.17'
392    Type:            STT_FUNC
393    Binding:         STB_GLOBAL
394  - Name:            'memset@@GLIBC_2.17'
395    Type:            STT_FUNC
396    Binding:         STB_GLOBAL
397    Value:           0x4004D0
398  - Name:            memset_p
399    Type:            STT_OBJECT
400    Section:         .bss
401    Binding:         STB_GLOBAL
402    Value:           0x411050
403    Size:            0x8
404  - Name:            __gmon_start__
405    Binding:         STB_WEAK
406  - Name:            'abort@@GLIBC_2.17'
407    Type:            STT_FUNC
408    Binding:         STB_GLOBAL
409  - Name:            _IO_stdin_used
410    Type:            STT_OBJECT
411    Section:         .rodata
412    Binding:         STB_GLOBAL
413    Value:           0x400760
414    Size:            0x4
415  - Name:            _end
416    Section:         .bss
417    Binding:         STB_GLOBAL
418    Value:           0x411058
419  - Name:            _start
420    Type:            STT_FUNC
421    Section:         .text
422    Binding:         STB_GLOBAL
423    Value:           0x400510
424  - Name:            __end__
425    Section:         .bss
426    Binding:         STB_GLOBAL
427    Value:           0x411058
428  - Name:            __bss_start
429    Section:         .bss
430    Binding:         STB_GLOBAL
431    Value:           0x411040
432  - Name:            main
433    Type:            STT_FUNC
434    Section:         .text
435    Binding:         STB_GLOBAL
436    Value:           0x400604
437    Size:            0xC4
438  - Name:            'printf@@GLIBC_2.17'
439    Type:            STT_FUNC
440    Binding:         STB_GLOBAL
441DynamicSymbols:
442  - Name:            __libc_start_main
443    Type:            STT_FUNC
444    Binding:         STB_GLOBAL
445  - Name:            __gmon_start__
446    Binding:         STB_WEAK
447  - Name:            abort
448    Type:            STT_FUNC
449    Binding:         STB_GLOBAL
450  - Name:            printf
451    Type:            STT_FUNC
452    Binding:         STB_GLOBAL
453  - Name:            memcpy
454    Type:            STT_FUNC
455    Binding:         STB_GLOBAL
456    Value:           0x4004B0
457  - Name:            memset
458    Type:            STT_FUNC
459    Binding:         STB_GLOBAL
460    Value:           0x4004D0
461