Rev 5191 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5191 | Rev 6324 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | /* AArch64 ELF support for BFD. |
1 | /* AArch64 ELF support for BFD. |
Line 2... | Line 2... | ||
2 | 2 | ||
3 | Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc. |
3 | Copyright (C) 2009-2015 Free Software Foundation, Inc. |
Line 4... | Line 4... | ||
4 | Contributed by ARM Ltd. |
4 | Contributed by ARM Ltd. |
Line 5... | Line 5... | ||
5 | 5 | ||
Line 122... | Line 122... | ||
122 | 122 | ||
123 | 123 | ||
124 | RELOC_NUMBER (R_AARCH64_P32_GOT_LD_PREL19, 25) |
124 | RELOC_NUMBER (R_AARCH64_P32_GOT_LD_PREL19, 25) |
- | 125 | RELOC_NUMBER (R_AARCH64_P32_ADR_GOT_PAGE, 26) |
|
Line 125... | Line -... | ||
125 | RELOC_NUMBER (R_AARCH64_P32_ADR_GOT_PAGE, 26) |
- | |
- | 126 | RELOC_NUMBER (R_AARCH64_P32_LD32_GOT_LO12_NC, 27) |
|
126 | RELOC_NUMBER (R_AARCH64_P32_LD32_GOT_LO12_NC, 27) |
127 | RELOC_NUMBER (R_AARCH64_P32_LD32_GOTPAGE_LO14, 28) |
127 | 128 | ||
- | 129 | RELOC_NUMBER (R_AARCH64_P32_TLSGD_ADR_PREL21, 80) |
|
- | 130 | RELOC_NUMBER (R_AARCH64_P32_TLSGD_ADR_PAGE21, 81) |
|
- | 131 | RELOC_NUMBER (R_AARCH64_P32_TLSGD_ADD_LO12_NC, 82) |
|
- | 132 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_ADR_PREL21, 83) |
|
- | 133 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_ADR_PAGE21, 84) |
|
- | 134 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_ADD_LO12_NC, 85) |
|
- | 135 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_MOVW_DTPREL_G1, 87) |
|
- | 136 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_MOVW_DTPREL_G0, 88) |
|
- | 137 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_MOVW_DTPREL_G0_NC, 89) |
|
128 | 138 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_ADD_DTPREL_HI12, 90) |
|
129 | RELOC_NUMBER (R_AARCH64_P32_TLSGD_ADR_PAGE21, 81) |
139 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_ADD_DTPREL_LO12, 91) |
130 | RELOC_NUMBER (R_AARCH64_P32_TLSGD_ADD_LO12_NC, 82) |
140 | RELOC_NUMBER (R_AARCH64_P32_TLSLD_ADD_DTPREL_LO12_NC, 92) |
131 | RELOC_NUMBER (R_AARCH64_P32_TLSIE_ADR_GOTTPREL_PAGE21, 103) |
141 | RELOC_NUMBER (R_AARCH64_P32_TLSIE_ADR_GOTTPREL_PAGE21, 103) |
132 | RELOC_NUMBER (R_AARCH64_P32_TLSIE_LD32_GOTTPREL_LO12_NC, 104) |
142 | RELOC_NUMBER (R_AARCH64_P32_TLSIE_LD32_GOTTPREL_LO12_NC, 104) |
Line 267... | Line 277... | ||
267 | RELOC_NUMBER (R_AARCH64_LDST32_ABS_LO12_NC, 285) |
277 | RELOC_NUMBER (R_AARCH64_LDST32_ABS_LO12_NC, 285) |
Line 268... | Line 278... | ||
268 | 278 | ||
269 | /* LD/ST64: (S+A) & 0xff8 */ |
279 | /* LD/ST64: (S+A) & 0xff8 */ |
Line -... | Line 280... | ||
- | 280 | RELOC_NUMBER (R_AARCH64_LDST64_ABS_LO12_NC, 286) |
|
- | 281 | ||
- | 282 | /* Group relocations to create a 16, 32, 48, or 64 bit PC-relative |
|
- | 283 | offset inline. */ |
|
- | 284 | ||
- | 285 | RELOC_NUMBER (R_AARCH64_MOVW_PREL_G0, 287) |
|
- | 286 | RELOC_NUMBER (R_AARCH64_MOVW_PREL_G0_NC, 288) |
|
- | 287 | RELOC_NUMBER (R_AARCH64_MOVW_PREL_G1, 289) |
|
- | 288 | RELOC_NUMBER (R_AARCH64_MOVW_PREL_G1_NC, 290) |
|
- | 289 | RELOC_NUMBER (R_AARCH64_MOVW_PREL_G2, 291) |
|
- | 290 | RELOC_NUMBER (R_AARCH64_MOVW_PREL_G2_NC, 292) |
|
270 | RELOC_NUMBER (R_AARCH64_LDST64_ABS_LO12_NC, 286) |
291 | RELOC_NUMBER (R_AARCH64_MOVW_PREL_G3, 293) |
271 | 292 | ||
Line -... | Line 293... | ||
- | 293 | /* LD/ST128: (S+A) & 0xff0 */ |
|
- | 294 | RELOC_NUMBER (R_AARCH64_LDST128_ABS_LO12_NC, 299) |
|
- | 295 | ||
- | 296 | /* Group relocations to create a 16, 32, 48, or 64 bit GOT-relative |
|
- | 297 | offset inline. */ |
|
- | 298 | ||
- | 299 | RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G0, 300) |
|
- | 300 | RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G0_NC, 301) |
|
- | 301 | RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G1, 302) |
|
- | 302 | RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G1_NC, 303) |
|
- | 303 | RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G2, 304) |
|
- | 304 | RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G2_NC, 305) |
|
- | 305 | RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G3, 306) |
|
- | 306 | ||
- | 307 | /* GOT-relative data relocations. */ |
|
- | 308 | ||
- | 309 | RELOC_NUMBER (R_AARCH64_GOTREL64, 307) |
|
- | 310 | RELOC_NUMBER (R_AARCH64_GOTREL32, 308) |
|
272 | /* LD/ST128: (S+A) & 0xff0 */ |
311 | |
- | 312 | /* GOT-relative instruction relocations. */ |
|
273 | RELOC_NUMBER (R_AARCH64_LDST128_ABS_LO12_NC, 299) |
313 | |
274 | 314 | RELOC_NUMBER (R_AARCH64_GOT_LD_PREL19, 309) |
|
- | 315 | RELOC_NUMBER (R_AARCH64_LD64_GOTOFF_LO15, 310) |
|
- | 316 | RELOC_NUMBER (R_AARCH64_ADR_GOT_PAGE, 311) |
|
- | 317 | RELOC_NUMBER (R_AARCH64_LD64_GOT_LO12_NC, 312) |
|
Line -... | Line 318... | ||
- | 318 | RELOC_NUMBER (R_AARCH64_LD64_GOTPAGE_LO15, 313) |
|
275 | RELOC_NUMBER (R_AARCH64_GOT_LD_PREL19, 309) |
319 | |
276 | RELOC_NUMBER (R_AARCH64_ADR_GOT_PAGE, 311) |
320 | /* General Dynamic TLS relocations. */ |
- | 321 | ||
- | 322 | RELOC_NUMBER (R_AARCH64_TLSGD_ADR_PREL21, 512) |
|
- | 323 | RELOC_NUMBER (R_AARCH64_TLSGD_ADR_PAGE21, 513) |
|
- | 324 | RELOC_NUMBER (R_AARCH64_TLSGD_ADD_LO12_NC, 514) |
|
- | 325 | RELOC_NUMBER (R_AARCH64_TLSGD_MOVW_G1, 515) |
|
- | 326 | RELOC_NUMBER (R_AARCH64_TLSGD_MOVW_G0_NC, 516) |
|
- | 327 | ||
- | 328 | /* Local Dynamic TLS relocations. */ |
|
- | 329 | ||
- | 330 | RELOC_NUMBER (R_AARCH64_TLSLD_ADR_PREL21, 517) |
|
- | 331 | RELOC_NUMBER (R_AARCH64_TLSLD_ADR_PAGE21, 518) |
|
- | 332 | RELOC_NUMBER (R_AARCH64_TLSLD_ADD_LO12_NC, 519) |
|
- | 333 | RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_G1, 520) |
|
- | 334 | RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_G0_NC, 521) |
|
- | 335 | RELOC_NUMBER (R_AARCH64_TLSLD_LD_PREL19, 522) |
|
- | 336 | RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G2, 523) |
|
- | 337 | RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G1, 524) |
|
- | 338 | RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC, 525) |
|
- | 339 | RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G0, 526) |
|
- | 340 | RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC, 527) |
|
- | 341 | RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_HI12, 528) |
|
- | 342 | RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_LO12, 529) |
|
- | 343 | RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC, 530) |
|
- | 344 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST8_DTPREL_LO12, 531) |
|
- | 345 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, 532) |
|
- | 346 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST16_DTPREL_LO12, 533) |
|
- | 347 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, 534) |
|
- | 348 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST32_DTPREL_LO12, 535) |
|
- | 349 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, 536) |
|
- | 350 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST64_DTPREL_LO12, 537) |
|
277 | RELOC_NUMBER (R_AARCH64_LD64_GOT_LO12_NC, 312) |
351 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, 538) |
278 | 352 | ||
279 | RELOC_NUMBER (R_AARCH64_TLSGD_ADR_PAGE21, 513) |
353 | /* Initial Exec TLS relocations. */ |
280 | RELOC_NUMBER (R_AARCH64_TLSGD_ADD_LO12_NC, 514) |
354 | |
281 | RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G1, 539) |
355 | RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G1, 539) |
- | 356 | RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC, 540) |
|
- | 357 | RELOC_NUMBER (R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21, 541) |
|
- | 358 | RELOC_NUMBER (R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC, 542) |
|
282 | RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC, 540) |
359 | RELOC_NUMBER (R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, 543) |
283 | RELOC_NUMBER (R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21, 541) |
360 | |
284 | RELOC_NUMBER (R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC, 542) |
361 | /* Local Exec TLS relocations. */ |
285 | RELOC_NUMBER (R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, 543) |
362 | |
286 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G2, 544) |
363 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G2, 544) |
287 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1, 545) |
364 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1, 545) |
288 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1_NC, 546) |
365 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1_NC, 546) |
289 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G0, 547) |
366 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G0, 547) |
- | 367 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G0_NC, 548) |
|
- | 368 | RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_HI12, 549) |
|
- | 369 | RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12, 550) |
|
- | 370 | RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12_NC, 551) |
|
- | 371 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST8_TPREL_LO12, 552) |
|
- | 372 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC, 553) |
|
- | 373 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST16_TPREL_LO12, 554) |
|
- | 374 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 555) |
|
- | 375 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST32_TPREL_LO12, 556) |
|
- | 376 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 557) |
|
Line 290... | Line 377... | ||
290 | RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G0_NC, 548) |
377 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST64_TPREL_LO12, 558) |
291 | RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_HI12, 549) |
378 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 559) |
292 | RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12, 550) |
379 | |
293 | RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12_NC, 551) |
380 | /* TLS descriptor relocations. */ |
Line 301... | Line 388... | ||
301 | RELOC_NUMBER (R_AARCH64_TLSDESC_OFF_G0_NC, 566) |
388 | RELOC_NUMBER (R_AARCH64_TLSDESC_OFF_G0_NC, 566) |
302 | RELOC_NUMBER (R_AARCH64_TLSDESC_LDR, 567) |
389 | RELOC_NUMBER (R_AARCH64_TLSDESC_LDR, 567) |
303 | RELOC_NUMBER (R_AARCH64_TLSDESC_ADD, 568) |
390 | RELOC_NUMBER (R_AARCH64_TLSDESC_ADD, 568) |
304 | RELOC_NUMBER (R_AARCH64_TLSDESC_CALL, 569) |
391 | RELOC_NUMBER (R_AARCH64_TLSDESC_CALL, 569) |
Line -... | Line 392... | ||
- | 392 | ||
- | 393 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST128_TPREL_LO12, 570) |
|
- | 394 | RELOC_NUMBER (R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC, 571) |
|
- | 395 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST128_DTPREL_LO12, 572) |
|
- | 396 | RELOC_NUMBER (R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC, 573) |
|
305 | 397 | ||
Line 306... | Line 398... | ||
306 | /* Dynamic relocations */ |
398 | /* Dynamic relocations */ |
307 | 399 |