LCOV - code coverage report
Current view: top level - include/llvm/BinaryFormat/ELFRelocs - AArch64.def (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 208 208 100.0 %
Date: 2018-10-20 13:21:21 Functions: 0 0 -
Legend: Lines: hit not hit

          Line data    Source code
       1             : 
       2             : #ifndef ELF_RELOC
       3             : #error "ELF_RELOC must be defined"
       4             : #endif
       5             : 
       6             : // Based on ABI release 1.1-beta, dated 6 November 2013. NB: The cover page of
       7             : // this document, IHI0056C_beta_aaelf64.pdf, on infocenter.arm.com, still
       8             : // labels this as release 1.0.
       9           8 : ELF_RELOC(R_AARCH64_NONE,                                0)
      10          23 : ELF_RELOC(R_AARCH64_ABS64,                           0x101)
      11          11 : ELF_RELOC(R_AARCH64_ABS32,                           0x102)
      12          12 : ELF_RELOC(R_AARCH64_ABS16,                           0x103)
      13          10 : ELF_RELOC(R_AARCH64_PREL64,                          0x104)
      14          43 : ELF_RELOC(R_AARCH64_PREL32,                          0x105)
      15          12 : ELF_RELOC(R_AARCH64_PREL16,                          0x106)
      16          10 : ELF_RELOC(R_AARCH64_MOVW_UABS_G0,                    0x107)
      17          10 : ELF_RELOC(R_AARCH64_MOVW_UABS_G0_NC,                 0x108)
      18          11 : ELF_RELOC(R_AARCH64_MOVW_UABS_G1,                    0x109)
      19          10 : ELF_RELOC(R_AARCH64_MOVW_UABS_G1_NC,                 0x10a)
      20          10 : ELF_RELOC(R_AARCH64_MOVW_UABS_G2,                    0x10b)
      21          10 : ELF_RELOC(R_AARCH64_MOVW_UABS_G2_NC,                 0x10c)
      22          12 : ELF_RELOC(R_AARCH64_MOVW_UABS_G3,                    0x10d)
      23          10 : ELF_RELOC(R_AARCH64_MOVW_SABS_G0,                    0x10e)
      24          10 : ELF_RELOC(R_AARCH64_MOVW_SABS_G1,                    0x10f)
      25          11 : ELF_RELOC(R_AARCH64_MOVW_SABS_G2,                    0x110)
      26          14 : ELF_RELOC(R_AARCH64_LD_PREL_LO19,                    0x111)
      27          16 : ELF_RELOC(R_AARCH64_ADR_PREL_LO21,                   0x112)
      28          36 : ELF_RELOC(R_AARCH64_ADR_PREL_PG_HI21,                0x113)
      29           8 : ELF_RELOC(R_AARCH64_ADR_PREL_PG_HI21_NC,             0x114)
      30          22 : ELF_RELOC(R_AARCH64_ADD_ABS_LO12_NC,                 0x115)
      31          21 : ELF_RELOC(R_AARCH64_LDST8_ABS_LO12_NC,               0x116)
      32          10 : ELF_RELOC(R_AARCH64_TSTBR14,                         0x117)
      33           9 : ELF_RELOC(R_AARCH64_CONDBR19,                        0x118)
      34          10 : ELF_RELOC(R_AARCH64_JUMP26,                          0x11a)
      35          11 : ELF_RELOC(R_AARCH64_CALL26,                          0x11b)
      36          19 : ELF_RELOC(R_AARCH64_LDST16_ABS_LO12_NC,              0x11c)
      37          19 : ELF_RELOC(R_AARCH64_LDST32_ABS_LO12_NC,              0x11d)
      38          21 : ELF_RELOC(R_AARCH64_LDST64_ABS_LO12_NC,              0x11e)
      39           8 : ELF_RELOC(R_AARCH64_MOVW_PREL_G0,                    0x11f)
      40           8 : ELF_RELOC(R_AARCH64_MOVW_PREL_G0_NC,                 0x120)
      41           8 : ELF_RELOC(R_AARCH64_MOVW_PREL_G1,                    0x121)
      42           8 : ELF_RELOC(R_AARCH64_MOVW_PREL_G1_NC,                 0x122)
      43           8 : ELF_RELOC(R_AARCH64_MOVW_PREL_G2,                    0x123)
      44           8 : ELF_RELOC(R_AARCH64_MOVW_PREL_G2_NC,                 0x124)
      45           8 : ELF_RELOC(R_AARCH64_MOVW_PREL_G3,                    0x125)
      46          11 : ELF_RELOC(R_AARCH64_LDST128_ABS_LO12_NC,             0x12b)
      47           8 : ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G0,                  0x12c)
      48           8 : ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G0_NC,               0x12d)
      49           8 : ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G1,                  0x12e)
      50           8 : ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G1_NC,               0x12f)
      51           8 : ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G2,                  0x130)
      52           8 : ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G2_NC,               0x131)
      53           8 : ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G3,                  0x132)
      54           8 : ELF_RELOC(R_AARCH64_GOTREL64,                        0x133)
      55           8 : ELF_RELOC(R_AARCH64_GOTREL32,                        0x134)
      56          12 : ELF_RELOC(R_AARCH64_GOT_LD_PREL19,                   0x135)
      57           8 : ELF_RELOC(R_AARCH64_LD64_GOTOFF_LO15,                0x136)
      58          15 : ELF_RELOC(R_AARCH64_ADR_GOT_PAGE,                    0x137)
      59          16 : ELF_RELOC(R_AARCH64_LD64_GOT_LO12_NC,                0x138)
      60           8 : ELF_RELOC(R_AARCH64_LD64_GOTPAGE_LO15,               0x139)
      61           8 : ELF_RELOC(R_AARCH64_TLSGD_ADR_PREL21,                0x200)
      62           8 : ELF_RELOC(R_AARCH64_TLSGD_ADR_PAGE21,                0x201)
      63           8 : ELF_RELOC(R_AARCH64_TLSGD_ADD_LO12_NC,               0x202)
      64           8 : ELF_RELOC(R_AARCH64_TLSGD_MOVW_G1,                   0x203)
      65           8 : ELF_RELOC(R_AARCH64_TLSGD_MOVW_G0_NC,                0x204)
      66           8 : ELF_RELOC(R_AARCH64_TLSLD_ADR_PREL21,                0x205)
      67           8 : ELF_RELOC(R_AARCH64_TLSLD_ADR_PAGE21,                0x206)
      68           8 : ELF_RELOC(R_AARCH64_TLSLD_ADD_LO12_NC,               0x207)
      69           8 : ELF_RELOC(R_AARCH64_TLSLD_MOVW_G1,                   0x208)
      70           8 : ELF_RELOC(R_AARCH64_TLSLD_MOVW_G0_NC,                0x209)
      71           8 : ELF_RELOC(R_AARCH64_TLSLD_LD_PREL19,                 0x20a)
      72          14 : ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G2,            0x20b)
      73          15 : ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G1,            0x20c)
      74          12 : ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC,         0x20d)
      75          15 : ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G0,            0x20e)
      76          12 : ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC,         0x20f)
      77          16 : ELF_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_HI12,           0x210)
      78          14 : ELF_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_LO12,           0x211)
      79          17 : ELF_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC,        0x212)
      80          12 : ELF_RELOC(R_AARCH64_TLSLD_LDST8_DTPREL_LO12,         0x213)
      81          13 : ELF_RELOC(R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC,      0x214)
      82          12 : ELF_RELOC(R_AARCH64_TLSLD_LDST16_DTPREL_LO12,        0x215)
      83          12 : ELF_RELOC(R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC,     0x216)
      84          11 : ELF_RELOC(R_AARCH64_TLSLD_LDST32_DTPREL_LO12,        0x217)
      85          12 : ELF_RELOC(R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC,     0x218)
      86          11 : ELF_RELOC(R_AARCH64_TLSLD_LDST64_DTPREL_LO12,        0x219)
      87          11 : ELF_RELOC(R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC,     0x21a)
      88          11 : ELF_RELOC(R_AARCH64_TLSIE_MOVW_GOTTPREL_G1,          0x21b)
      89          11 : ELF_RELOC(R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC,       0x21c)
      90          15 : ELF_RELOC(R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21,       0x21d)
      91          15 : ELF_RELOC(R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC,     0x21e)
      92          12 : ELF_RELOC(R_AARCH64_TLSIE_LD_GOTTPREL_PREL19,        0x21f)
      93          12 : ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G2,             0x220)
      94          15 : ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G1,             0x221)
      95          12 : ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G1_NC,          0x222)
      96          15 : ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G0,             0x223)
      97          12 : ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G0_NC,          0x224)
      98          16 : ELF_RELOC(R_AARCH64_TLSLE_ADD_TPREL_HI12,            0x225)
      99          14 : ELF_RELOC(R_AARCH64_TLSLE_ADD_TPREL_LO12,            0x226)
     100          17 : ELF_RELOC(R_AARCH64_TLSLE_ADD_TPREL_LO12_NC,         0x227)
     101          12 : ELF_RELOC(R_AARCH64_TLSLE_LDST8_TPREL_LO12,          0x228)
     102          12 : ELF_RELOC(R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC,       0x229)
     103          12 : ELF_RELOC(R_AARCH64_TLSLE_LDST16_TPREL_LO12,         0x22a)
     104          12 : ELF_RELOC(R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,      0x22b)
     105          11 : ELF_RELOC(R_AARCH64_TLSLE_LDST32_TPREL_LO12,         0x22c)
     106          12 : ELF_RELOC(R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,      0x22d)
     107          11 : ELF_RELOC(R_AARCH64_TLSLE_LDST64_TPREL_LO12,         0x22e)
     108          11 : ELF_RELOC(R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,      0x22f)
     109           8 : ELF_RELOC(R_AARCH64_TLSDESC_LD_PREL19,               0x230)
     110           8 : ELF_RELOC(R_AARCH64_TLSDESC_ADR_PREL21,              0x231)
     111          24 : ELF_RELOC(R_AARCH64_TLSDESC_ADR_PAGE21,              0x232)
     112          23 : ELF_RELOC(R_AARCH64_TLSDESC_LD64_LO12,               0x233)
     113          24 : ELF_RELOC(R_AARCH64_TLSDESC_ADD_LO12,                0x234)
     114           8 : ELF_RELOC(R_AARCH64_TLSDESC_OFF_G1,                  0x235)
     115           8 : ELF_RELOC(R_AARCH64_TLSDESC_OFF_G0_NC,               0x236)
     116           8 : ELF_RELOC(R_AARCH64_TLSDESC_LDR,                     0x237)
     117           8 : ELF_RELOC(R_AARCH64_TLSDESC_ADD,                     0x238)
     118          21 : ELF_RELOC(R_AARCH64_TLSDESC_CALL,                    0x239)
     119          10 : ELF_RELOC(R_AARCH64_TLSLE_LDST128_TPREL_LO12,        0x23a)
     120          10 : ELF_RELOC(R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC,     0x23b)
     121          10 : ELF_RELOC(R_AARCH64_TLSLD_LDST128_DTPREL_LO12,       0x23c)
     122          10 : ELF_RELOC(R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC,    0x23d)
     123          11 : ELF_RELOC(R_AARCH64_COPY,                            0x400)
     124          10 : ELF_RELOC(R_AARCH64_GLOB_DAT,                        0x401)
     125          20 : ELF_RELOC(R_AARCH64_JUMP_SLOT,                       0x402)
     126          86 : ELF_RELOC(R_AARCH64_RELATIVE,                        0x403)
     127           8 : ELF_RELOC(R_AARCH64_TLS_DTPREL64,                    0x404)
     128           8 : ELF_RELOC(R_AARCH64_TLS_DTPMOD64,                    0x405)
     129          11 : ELF_RELOC(R_AARCH64_TLS_TPREL64,                     0x406)
     130          12 : ELF_RELOC(R_AARCH64_TLSDESC,                         0x407)
     131          12 : ELF_RELOC(R_AARCH64_IRELATIVE,                       0x408)
     132             : 
     133             : // ELF_RELOC(R_AARCH64_P32_NONE,                         0)
     134           8 : ELF_RELOC(R_AARCH64_P32_ABS32,                       0x001)
     135           8 : ELF_RELOC(R_AARCH64_P32_ABS16,                       0x002)
     136           8 : ELF_RELOC(R_AARCH64_P32_PREL32,                      0x003)
     137           8 : ELF_RELOC(R_AARCH64_P32_PREL16,                      0x004)
     138           7 : ELF_RELOC(R_AARCH64_P32_MOVW_UABS_G0,                0x005)
     139           7 : ELF_RELOC(R_AARCH64_P32_MOVW_UABS_G0_NC,             0x006)
     140           7 : ELF_RELOC(R_AARCH64_P32_MOVW_UABS_G1,                0x007)
     141           7 : ELF_RELOC(R_AARCH64_P32_MOVW_SABS_G0,                0x008)
     142          11 : ELF_RELOC(R_AARCH64_P32_LD_PREL_LO19,                0x009)
     143           7 : ELF_RELOC(R_AARCH64_P32_ADR_PREL_LO21,               0x00a)
     144          11 : ELF_RELOC(R_AARCH64_P32_ADR_PREL_PG_HI21,            0x00b)
     145          11 : ELF_RELOC(R_AARCH64_P32_ADD_ABS_LO12_NC,             0x00c)
     146          11 : ELF_RELOC(R_AARCH64_P32_LDST8_ABS_LO12_NC,           0x00d)
     147          11 : ELF_RELOC(R_AARCH64_P32_LDST16_ABS_LO12_NC,          0x00e)
     148          10 : ELF_RELOC(R_AARCH64_P32_LDST32_ABS_LO12_NC,          0x00f)
     149           9 : ELF_RELOC(R_AARCH64_P32_LDST64_ABS_LO12_NC,          0x010)
     150           8 : ELF_RELOC(R_AARCH64_P32_LDST128_ABS_LO12_NC,         0x011)
     151           9 : ELF_RELOC(R_AARCH64_P32_TSTBR14,                     0x012)
     152           8 : ELF_RELOC(R_AARCH64_P32_CONDBR19,                    0x013)
     153           8 : ELF_RELOC(R_AARCH64_P32_JUMP26,                      0x014)
     154           8 : ELF_RELOC(R_AARCH64_P32_CALL26,                      0x015)
     155           7 : ELF_RELOC(R_AARCH64_P32_MOVW_PREL_G0,                0x016)
     156           7 : ELF_RELOC(R_AARCH64_P32_MOVW_PREL_G0_NC,             0x017)
     157           7 : ELF_RELOC(R_AARCH64_P32_MOVW_PREL_G1,                0x018)
     158           7 : ELF_RELOC(R_AARCH64_P32_GOT_LD_PREL19,               0x019)
     159           9 : ELF_RELOC(R_AARCH64_P32_ADR_GOT_PAGE,                0x01a)
     160           9 : ELF_RELOC(R_AARCH64_P32_LD32_GOT_LO12_NC,            0x01b)
     161           7 : ELF_RELOC(R_AARCH64_P32_LD32_GOTPAGE_LO14,           0x01c)
     162           7 : ELF_RELOC(R_AARCH64_P32_TLSGD_ADR_PREL21,            0x050)
     163           7 : ELF_RELOC(R_AARCH64_P32_TLSGD_ADR_PAGE21,            0x051)
     164           7 : ELF_RELOC(R_AARCH64_P32_TLSGD_ADD_LO12_NC,           0x052)
     165           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_ADR_PREL21,            0x053)
     166           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_ADR_PAGE21,            0x054)
     167           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_ADD_LO12_NC,           0x055)
     168           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_LD_PREL19,             0x056)
     169           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_MOVW_DTPREL_G1,        0x057)
     170           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_MOVW_DTPREL_G0,        0x058)
     171           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_MOVW_DTPREL_G0_NC,     0x059)
     172           7 : ELF_RELOC(R_AARCH64_P32_TLSLD_ADD_DTPREL_HI12,       0x05a)
     173           9 : ELF_RELOC(R_AARCH64_P32_TLSLD_ADD_DTPREL_LO12,       0x05b)
     174           9 : ELF_RELOC(R_AARCH64_P32_TLSLD_ADD_DTPREL_LO12_NC,    0x05c)
     175           9 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST8_DTPREL_LO12,     0x05d)
     176           9 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST8_DTPREL_LO12_NC,  0x05e)
     177           9 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST16_DTPREL_LO12,    0x05f)
     178           9 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST16_DTPREL_LO12_NC, 0x060)
     179           8 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST32_DTPREL_LO12,    0x061)
     180           9 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST32_DTPREL_LO12_NC, 0x062)
     181           8 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST64_DTPREL_LO12,    0x063)
     182           8 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST64_DTPREL_LO12_NC, 0x064)
     183           8 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST128_DTPREL_LO12,   0x065)
     184           8 : ELF_RELOC(R_AARCH64_P32_TLSLD_LDST128_DTPREL_LO12_NC,0x066)
     185           9 : ELF_RELOC(R_AARCH64_P32_TLSIE_ADR_GOTTPREL_PAGE21,   0x067)
     186           9 : ELF_RELOC(R_AARCH64_P32_TLSIE_LD32_GOTTPREL_LO12_NC, 0x068)
     187           7 : ELF_RELOC(R_AARCH64_P32_TLSIE_LD_GOTTPREL_PREL19,    0x069)
     188           7 : ELF_RELOC(R_AARCH64_P32_TLSLE_MOVW_TPREL_G1,         0x06a)
     189           7 : ELF_RELOC(R_AARCH64_P32_TLSLE_MOVW_TPREL_G0,         0x06b)
     190           7 : ELF_RELOC(R_AARCH64_P32_TLSLE_MOVW_TPREL_G0_NC,      0x06c)
     191           7 : ELF_RELOC(R_AARCH64_P32_TLSLE_ADD_TPREL_HI12,        0x06d)
     192           9 : ELF_RELOC(R_AARCH64_P32_TLSLE_ADD_TPREL_LO12,        0x06e)
     193           9 : ELF_RELOC(R_AARCH64_P32_TLSLE_ADD_TPREL_LO12_NC,     0x06f)
     194           9 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST8_TPREL_LO12,      0x070)
     195           9 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST8_TPREL_LO12_NC,   0x071)
     196           9 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST16_TPREL_LO12,     0x072)
     197           9 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST16_TPREL_LO12_NC,  0x073)
     198           8 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST32_TPREL_LO12,     0x074)
     199           9 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST32_TPREL_LO12_NC,  0x075)
     200           8 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST64_TPREL_LO12,     0x076)
     201           8 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST64_TPREL_LO12_NC,  0x077)
     202           8 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST128_TPREL_LO12,    0x078)
     203           8 : ELF_RELOC(R_AARCH64_P32_TLSLE_LDST128_TPREL_LO12_NC, 0x079)
     204           7 : ELF_RELOC(R_AARCH64_P32_TLSDESC_LD_PREL19,           0x07a)
     205           7 : ELF_RELOC(R_AARCH64_P32_TLSDESC_ADR_PREL21,          0x07b)
     206           9 : ELF_RELOC(R_AARCH64_P32_TLSDESC_ADR_PAGE21,          0x07c)
     207           9 : ELF_RELOC(R_AARCH64_P32_TLSDESC_LD32_LO12,           0x07d)
     208           9 : ELF_RELOC(R_AARCH64_P32_TLSDESC_ADD_LO12,            0x07e)
     209           7 : ELF_RELOC(R_AARCH64_P32_TLSDESC_CALL,                0x07f)
     210           7 : ELF_RELOC(R_AARCH64_P32_COPY,                        0x0b4)
     211           7 : ELF_RELOC(R_AARCH64_P32_GLOB_DAT,                    0x0b5)
     212           7 : ELF_RELOC(R_AARCH64_P32_JUMP_SLOT,                   0x0b6)
     213           7 : ELF_RELOC(R_AARCH64_P32_RELATIVE,                    0x0b7)
     214           7 : ELF_RELOC(R_AARCH64_P32_TLS_DTPREL,                  0x0b8)
     215           7 : ELF_RELOC(R_AARCH64_P32_TLS_DTPMOD,                  0x0b9)
     216           7 : ELF_RELOC(R_AARCH64_P32_TLS_TPREL,                   0x0ba)
     217           7 : ELF_RELOC(R_AARCH64_P32_TLSDESC,                     0x0bb)
     218           7 : ELF_RELOC(R_AARCH64_P32_IRELATIVE,                   0x0bc)

Generated by: LCOV version 1.13