Home | History | Annotate | Download | only in Hexagon
      1 # RUN: llvm-mc -filetype=obj -triple=hexagon %s | llvm-objdump -r - | FileCheck %s
      2 
      3 # CHECK: R_HEX_B22_PCREL
      4 r_hex_b22_pcrel:
      5 { jump #undefined }
      6 
      7 # CHECK: R_HEX_B15_PCREL
      8 r_hex_b15_pcrel:
      9 { if (p0) jump #undefined }
     10 
     11 # CHECK: R_HEX_B7_PCREL
     12 r_hex_b7_pcrel:
     13 { loop1 (#undefined, #0) }
     14 
     15 # CHECK: R_HEX_32
     16 r_hex_32:
     17 .word undefined
     18 
     19 # CHECK: R_HEX_16
     20 r_hex_16:
     21 .half undefined
     22 .half 0
     23 
     24 # CHECK: R_HEX_8
     25 r_hex_8:
     26 .byte undefined
     27 .byte 0
     28 .byte 0
     29 .byte 0
     30 
     31 # CHECK: R_HEX_GPREL16_0
     32 r_hex_gprel16_0:
     33 { r0 = memb (#undefined@gotrel) }
     34 
     35 # CHECK: R_HEX_GPREL16_1
     36 r_hex_gprel16_1:
     37 { r0 = memh (#undefined@gotrel) }
     38 
     39 # CHECK: R_HEX_GPREL16_2
     40 r_hex_gprel16_2:
     41 { r0 = memw (#undefined@gotrel) }
     42 
     43 # CHECK: R_HEX_GPREL16_3
     44 r_hex_gprel16_3:
     45 { r1:0 = memd (#undefined@gotrel) }
     46 
     47 # CHECK: R_HEX_B13_PCREL
     48 r_hex_b13_pcrel:
     49 { if (r0 != #0) jump:nt #undefined }
     50 
     51 # CHECK: R_HEX_B9_PCREL
     52 r_hex_b9_pcrel:
     53 { r0 = #0 ; jump #undefined }
     54 
     55 # CHECK: R_HEX_B32_PCREL_X
     56 r_hex_b32_pcrel_x:
     57 { jump ##undefined }
     58 
     59 # CHECK: R_HEX_32_6_X
     60 r_hex_32_6_x:
     61 { r0 = ##undefined }
     62 
     63 # CHECK: R_HEX_B22_PCREL_X
     64 r_hex_b22_pcrel_x:
     65 { jump ##undefined }
     66 
     67 # CHECK: R_HEX_B15_PCREL_X
     68 r_hex_b15_pcrel_x:
     69 { if (p0) jump ##undefined }
     70 
     71 # CHECK: R_HEX_B9_PCREL_X
     72 r_hex_b9_pcrel_x:
     73 { r0 = #0 ; jump ##undefined }
     74 
     75 # CHECK: R_HEX_B7_PCREL_X
     76 r_hex_b7_pcrel_x:
     77 { loop1 (##undefined, #0) }
     78 
     79 # CHECK: R_HEX_32_PCREL
     80 r_hex_32_pcrel:
     81 .word undefined@pcrel
     82 
     83 # CHECK: R_HEX_PLT_B22_PCREL
     84 r_hex_plt_b22_pcrel:
     85 jump undefined@plt
     86 
     87 # CHECK: R_HEX_GOTREL_32
     88 r_hex_gotrel_32:
     89 .word undefined@gotrel
     90 
     91 # CHECK: R_HEX_GOT_32
     92 r_hex_got_32:
     93 .word undefined@got
     94 
     95 # CHECK: R_HEX_GOT_16
     96 r_hex_got_16:
     97 .half undefined@got
     98 .half 0
     99 
    100 # CHECK: R_HEX_DTPREL_32
    101 r_hex_dtprel_32:
    102 .word undefined@dtprel
    103 
    104 # CHECK: R_HEX_DTPREL_16
    105 r_hex_dtprel_16:
    106 .half undefined@dtprel
    107 .half 0
    108 
    109 # CHECK: R_HEX_GD_GOT_32
    110 r_hex_gd_got_32:
    111 .word undefined@gdgot
    112 
    113 # CHECK: R_HEX_GD_GOT_16
    114 r_hex_gd_got_16:
    115 .half undefined@gdgot
    116 .half 0
    117 
    118 # CHECK: R_HEX_IE_32
    119 r_hex_ie_32:
    120 .word undefined@ie
    121 
    122 # CHECK: R_HEX_IE_GOT_32
    123 r_hex_ie_got_32:
    124 .word undefined@iegot
    125 
    126 # CHECK: R_HEX_IE_GOT_16
    127 r_hex_ie_got_16:
    128 .half undefined@iegot
    129 .half 0
    130 
    131 # CHECK: R_HEX_TPREL_32
    132 r_hex_tprel_32:
    133 .word undefined@tprel
    134 
    135 # CHECK: R_HEX_TPREL_16
    136 r_hex_tprel_16:
    137 r0 = #undefined@tprel
    138 
    139 # CHECK: R_HEX_6_PCREL_X
    140 r_hex_6_pcrel_x:
    141 { r0 = ##undefined@pcrel
    142   r1 = r1 }
    143 
    144 # CHECK: R_HEX_GOTREL_32_6_X
    145 r_hex_gotrel_32_6_x:
    146 { r0 = ##undefined@gotrel }
    147 
    148 # CHECK: R_HEX_GOTREL_16_X
    149 r_hex_gotrel_16_x:
    150 { r0 = ##undefined@gotrel }
    151 
    152 # CHECK: R_HEX_GOTREL_11_X
    153 r_hex_gotrel_11_x:
    154 { r0 = memw(r0 + ##undefined@gotrel) }
    155 
    156 # CHECK: R_HEX_GOT_32_6_X
    157 r_hex_got_32_6_x:
    158 { r0 = ##undefined@got }
    159 
    160 # CHECK: R_HEX_GOT_16_X
    161 r_hex_got_16_x:
    162 { r0 = ##undefined@got }
    163 
    164 # CHECK: R_HEX_GOT_11_X
    165 r_hex_got_11_x:
    166 { r0 = memw(r0 + ##undefined@got) }
    167 
    168 # CHECK: R_HEX_DTPREL_32_6_X
    169 r_hex_dtprel_32_6_x:
    170 { r0 = ##undefined@dtprel }
    171 
    172 # CHECK: R_HEX_DTPREL_16_X
    173 r_hex_dtprel_16_x:
    174 { r0 = ##undefined@dtprel }
    175 
    176 # CHECK: R_HEX_DTPREL_11_X
    177 r_hex_dtprel_11_x:
    178 { r0 = memw(r0 + ##undefined@dtprel) }
    179 
    180 # CHECK: R_HEX_GD_GOT_32_6_X
    181 r_hex_gd_got_32_6_x:
    182 { r0 = ##undefined@gdgot }
    183 
    184 # CHECK: R_HEX_GD_GOT_16_X
    185 r_hex_gd_got_16_x:
    186 { r0 = ##undefined@gdgot }
    187 
    188 # CHECK: R_HEX_GD_GOT_11_X
    189 r_hex_gd_got_11_x:
    190 { r0 = memw(r0 + ##undefined@gdgot) }
    191 
    192 # CHECK: R_HEX_IE_32_6_X
    193 r_hex_ie_32_6_x:
    194 { r0 = ##undefined@ie }
    195 
    196 # CHECK: R_HEX_IE_16_X
    197 r_hex_ie_16_x:
    198 { r0 = ##undefined@ie }
    199 
    200 # CHECK: R_HEX_IE_GOT_32_6_X
    201 r_hex_ie_got_32_6_x:
    202 { r0 = ##undefined@iegot }
    203 
    204 # CHECK: R_HEX_IE_GOT_16_X
    205 r_hex_ie_got_16_x:
    206 { r0 = ##undefined@iegot }
    207 
    208 # CHECK: R_HEX_IE_GOT_11_X
    209 r_hex_ie_got_11_x:
    210 { r0 = memw(r0 + ##undefined@iegot) }
    211 
    212 # CHECK: R_HEX_TPREL_32_6_X
    213 r_hex_tprel_32_6_x:
    214 { r0 = ##undefined@tprel }
    215 
    216 # CHECK: R_HEX_TPREL_16_X
    217 r_hex_tprel_16_x:
    218 { r0 = ##undefined@tprel }
    219 
    220 # CHECK: R_HEX_TPREL_11_X
    221 r_hex_tprel_11_x:
    222 { r0 = memw(r0 + ##undefined@tprel) }
    223 
    224 # CHECK: R_HEX_LD_GOT_32
    225 r_hex_ld_got_32:
    226 .word undefined@ldgot
    227 
    228 # CHECK: R_HEX_LD_GOT_16
    229 r_hex_ld_got_16:
    230 .half undefined@ldgot
    231 .half 0
    232 
    233 # CHECK: R_HEX_LD_GOT_32_6_X
    234 r_hex_ld_got_32_6_x:
    235 { r0 = ##undefined@ldgot }
    236 
    237 # CHECK: R_HEX_LD_GOT_16_X
    238 r_hex_ld_got_16_x:
    239 { r0 = ##undefined@ldgot }
    240 
    241 # CHECK: R_HEX_LD_GOT_11_X
    242 r_hex_ld_got_11_x:
    243 { r0 = memw(r0 + ##undefined@ldgot) }
    244 
    245