1 # RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8.4a --disassemble < %s | FileCheck %s 2 # RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=-v8.4a --disassemble < %s 2>&1 | FileCheck %s --check-prefix=CHECK-NO-V84 3 4 [0x41,0x01,0x00,0x19] 5 [0x41,0x01,0x10,0x19] 6 [0x62,0xf1,0x0f,0x19] 7 [0xe3,0xd3,0x1f,0x19] 8 9 [0x84,0x01,0x40,0x19] 10 [0x84,0x01,0x50,0x19] 11 [0xa5,0xf1,0x4f,0x19] 12 [0xe6,0xe3,0x5f,0x19] 13 14 [0xc7,0x01,0xc0,0x19] 15 [0xc7,0x01,0xd0,0x19] 16 [0xe8,0xf1,0xcf,0x19] 17 [0xe9,0xf3,0xdf,0x19] 18 19 [0x00,0x02,0x80,0x19] 20 [0x00,0x02,0x90,0x19] 21 [0x21,0xf2,0x8f,0x19] 22 [0xe2,0x03,0x80,0x19] 23 24 [0x4a,0x02,0x00,0x59] 25 [0x4a,0x02,0x10,0x59] 26 [0x6b,0xf2,0x0f,0x59] 27 [0xec,0x13,0x00,0x59] 28 29 [0x8d,0x02,0x40,0x59] 30 [0x8d,0x02,0x50,0x59] 31 [0xae,0xf2,0x4f,0x59] 32 [0xef,0x23,0x40,0x59] 33 34 [0xd0,0x02,0xc0,0x59] 35 [0xd0,0x02,0xd0,0x59] 36 [0xf1,0xf2,0xcf,0x59] 37 [0xf2,0x33,0xc0,0x59] 38 39 [0x03,0x03,0x80,0x59] 40 [0x03,0x03,0x90,0x59] 41 [0x24,0xf3,0x8f,0x59] 42 [0xe5,0x43,0x80,0x59] 43 44 [0x53,0x03,0x00,0x99] 45 [0x53,0x03,0x10,0x99] 46 [0x74,0xf3,0x0f,0x99] 47 [0xf5,0x53,0x00,0x99] 48 49 [0x96,0x03,0x40,0x99] 50 [0x96,0x03,0x50,0x99] 51 [0xb7,0xf3,0x4f,0x99] 52 [0xf8,0x63,0x40,0x99] 53 54 [0xc6,0x03,0x80,0x99] 55 [0xc6,0x03,0x90,0x99] 56 [0x07,0xf0,0x8f,0x99] 57 [0xe8,0x73,0x80,0x99] 58 59 [0x29,0x00,0x00,0xd9] 60 [0x29,0x00,0x10,0xd9] 61 [0x4a,0xf0,0x0f,0xd9] 62 [0xeb,0x83,0x00,0xd9] 63 64 [0x6c,0x00,0x40,0xd9] 65 [0x6c,0x00,0x50,0xd9] 66 [0x8d,0xf0,0x4f,0xd9] 67 [0xee,0x93,0x40,0xd9] 68 69 #CHECK: stlurb w1, [x10] 70 #CHECK-NEXT: stlurb w1, [x10, #-256] 71 #CHECK-NEXT: stlurb w2, [x11, #255] 72 #CHECK-NEXT: stlurb w3, [sp, #-3] 73 #CHECK-NEXT: ldapurb w4, [x12] 74 #CHECK-NEXT: ldapurb w4, [x12, #-256] 75 #CHECK-NEXT: ldapurb w5, [x13, #255] 76 #CHECK-NEXT: ldapurb w6, [sp, #-2] 77 #CHECK-NEXT: ldapursb w7, [x14] 78 #CHECK-NEXT: ldapursb w7, [x14, #-256] 79 #CHECK-NEXT: ldapursb w8, [x15, #255] 80 #CHECK-NEXT: ldapursb w9, [sp, #-1] 81 #CHECK-NEXT: ldapursb x0, [x16] 82 #CHECK-NEXT: ldapursb x0, [x16, #-256] 83 #CHECK-NEXT: ldapursb x1, [x17, #255] 84 #CHECK-NEXT: ldapursb x2, [sp] 85 #CHECK-NEXT: stlurh w10, [x18] 86 #CHECK-NEXT: stlurh w10, [x18, #-256] 87 #CHECK-NEXT: stlurh w11, [x19, #255] 88 #CHECK-NEXT: stlurh w12, [sp, #1] 89 #CHECK-NEXT: ldapurh w13, [x20] 90 #CHECK-NEXT: ldapurh w13, [x20, #-256] 91 #CHECK-NEXT: ldapurh w14, [x21, #255] 92 #CHECK-NEXT: ldapurh w15, [sp, #2] 93 #CHECK-NEXT: ldapursh w16, [x22] 94 #CHECK-NEXT: ldapursh w16, [x22, #-256] 95 #CHECK-NEXT: ldapursh w17, [x23, #255] 96 #CHECK-NEXT: ldapursh w18, [sp, #3] 97 #CHECK-NEXT: ldapursh x3, [x24] 98 #CHECK-NEXT: ldapursh x3, [x24, #-256] 99 #CHECK-NEXT: ldapursh x4, [x25, #255] 100 #CHECK-NEXT: ldapursh x5, [sp, #4] 101 #CHECK-NEXT: stlur w19, [x26] 102 #CHECK-NEXT: stlur w19, [x26, #-256] 103 #CHECK-NEXT: stlur w20, [x27, #255] 104 #CHECK-NEXT: stlur w21, [sp, #5] 105 #CHECK-NEXT: ldapur w22, [x28] 106 #CHECK-NEXT: ldapur w22, [x28, #-256] 107 #CHECK-NEXT: ldapur w23, [x29, #255] 108 #CHECK-NEXT: ldapur w24, [sp, #6] 109 #CHECK-NEXT: ldapursw x6, [x30] 110 #CHECK-NEXT: ldapursw x6, [x30, #-256] 111 #CHECK-NEXT: ldapursw x7, [x0, #255] 112 #CHECK-NEXT: ldapursw x8, [sp, #7] 113 #CHECK-NEXT: stlur x9, [x1] 114 #CHECK-NEXT: stlur x9, [x1, #-256] 115 #CHECK-NEXT: stlur x10, [x2, #255] 116 #CHECK-NEXT: stlur x11, [sp, #8] 117 #CHECK-NEXT: ldapur x12, [x3] 118 #CHECK-NEXT: ldapur x12, [x3, #-256] 119 #CHECK-NEXT: ldapur x13, [x4, #255] 120 #CHECK-NEXT: ldapur x14, [sp, #9] 121 122 #CHECK-NO-V84: warning: invalid instruction encoding 123 #CHECK-NO-V84: [0x41,0x01,0x00,0x19] 124 #CHECK-NO-V84: ^ 125 #CHECK-NO-V84: warning: invalid instruction encoding 126 #CHECK-NO-V84: [0x41,0x01,0x10,0x19] 127 #CHECK-NO-V84: ^ 128 #CHECK-NO-V84: warning: invalid instruction encoding 129 #CHECK-NO-V84: [0x62,0xf1,0x0f,0x19] 130 #CHECK-NO-V84: ^ 131 #CHECK-NO-V84: warning: invalid instruction encoding 132 #CHECK-NO-V84: [0xe3,0xd3,0x1f,0x19] 133 #CHECK-NO-V84: ^ 134 #CHECK-NO-V84: warning: invalid instruction encoding 135 #CHECK-NO-V84: [0x84,0x01,0x40,0x19] 136 #CHECK-NO-V84: ^ 137 #CHECK-NO-V84: warning: invalid instruction encoding 138 #CHECK-NO-V84: [0x84,0x01,0x50,0x19] 139 #CHECK-NO-V84: ^ 140 #CHECK-NO-V84: warning: invalid instruction encoding 141 #CHECK-NO-V84: [0xa5,0xf1,0x4f,0x19] 142 #CHECK-NO-V84: ^ 143 #CHECK-NO-V84: warning: invalid instruction encoding 144 #CHECK-NO-V84: [0xe6,0xe3,0x5f,0x19] 145 #CHECK-NO-V84: ^ 146 #CHECK-NO-V84: warning: invalid instruction encoding 147 #CHECK-NO-V84: [0xc7,0x01,0xc0,0x19] 148 #CHECK-NO-V84: ^ 149 #CHECK-NO-V84: warning: invalid instruction encoding 150 #CHECK-NO-V84: [0xc7,0x01,0xd0,0x19] 151 #CHECK-NO-V84: ^ 152 #CHECK-NO-V84: warning: invalid instruction encoding 153 #CHECK-NO-V84: [0xe8,0xf1,0xcf,0x19] 154 #CHECK-NO-V84: ^ 155 #CHECK-NO-V84: warning: invalid instruction encoding 156 #CHECK-NO-V84: [0xe9,0xf3,0xdf,0x19] 157 #CHECK-NO-V84: ^ 158 #CHECK-NO-V84: warning: invalid instruction encoding 159 #CHECK-NO-V84: [0x00,0x02,0x80,0x19] 160 #CHECK-NO-V84: ^ 161 #CHECK-NO-V84: warning: invalid instruction encoding 162 #CHECK-NO-V84: [0x00,0x02,0x90,0x19] 163 #CHECK-NO-V84: ^ 164 #CHECK-NO-V84: warning: invalid instruction encoding 165 #CHECK-NO-V84: [0x21,0xf2,0x8f,0x19] 166 #CHECK-NO-V84: ^ 167 #CHECK-NO-V84: warning: invalid instruction encoding 168 #CHECK-NO-V84: [0xe2,0x03,0x80,0x19] 169 #CHECK-NO-V84: ^ 170 #CHECK-NO-V84: warning: invalid instruction encoding 171 #CHECK-NO-V84: [0x4a,0x02,0x00,0x59] 172 #CHECK-NO-V84: ^ 173 #CHECK-NO-V84: warning: invalid instruction encoding 174 #CHECK-NO-V84: [0x4a,0x02,0x10,0x59] 175 #CHECK-NO-V84: ^ 176 #CHECK-NO-V84: warning: invalid instruction encoding 177 #CHECK-NO-V84: [0x6b,0xf2,0x0f,0x59] 178 #CHECK-NO-V84: ^ 179 #CHECK-NO-V84: warning: invalid instruction encoding 180 #CHECK-NO-V84: [0xec,0x13,0x00,0x59] 181 #CHECK-NO-V84: ^ 182 #CHECK-NO-V84: warning: invalid instruction encoding 183 #CHECK-NO-V84: [0x8d,0x02,0x40,0x59] 184 #CHECK-NO-V84: ^ 185 #CHECK-NO-V84: warning: invalid instruction encoding 186 #CHECK-NO-V84: [0x8d,0x02,0x50,0x59] 187 #CHECK-NO-V84: ^ 188 #CHECK-NO-V84: warning: invalid instruction encoding 189 #CHECK-NO-V84: [0xae,0xf2,0x4f,0x59] 190 #CHECK-NO-V84: ^ 191 #CHECK-NO-V84: warning: invalid instruction encoding 192 #CHECK-NO-V84: [0xef,0x23,0x40,0x59] 193 #CHECK-NO-V84: ^ 194 #CHECK-NO-V84: warning: invalid instruction encoding 195 #CHECK-NO-V84: [0xd0,0x02,0xc0,0x59] 196 #CHECK-NO-V84: ^ 197 #CHECK-NO-V84: warning: invalid instruction encoding 198 #CHECK-NO-V84: [0xd0,0x02,0xd0,0x59] 199 #CHECK-NO-V84: ^ 200 #CHECK-NO-V84: warning: invalid instruction encoding 201 #CHECK-NO-V84: [0xf1,0xf2,0xcf,0x59] 202 #CHECK-NO-V84: ^ 203 #CHECK-NO-V84: warning: invalid instruction encoding 204 #CHECK-NO-V84: [0xf2,0x33,0xc0,0x59] 205 #CHECK-NO-V84: ^ 206 #CHECK-NO-V84: warning: invalid instruction encoding 207 #CHECK-NO-V84: [0x03,0x03,0x80,0x59] 208 #CHECK-NO-V84: ^ 209 #CHECK-NO-V84: warning: invalid instruction encoding 210 #CHECK-NO-V84: [0x03,0x03,0x90,0x59] 211 #CHECK-NO-V84: ^ 212 #CHECK-NO-V84: warning: invalid instruction encoding 213 #CHECK-NO-V84: [0x24,0xf3,0x8f,0x59] 214 #CHECK-NO-V84: ^ 215 #CHECK-NO-V84: warning: invalid instruction encoding 216 #CHECK-NO-V84: [0xe5,0x43,0x80,0x59] 217 #CHECK-NO-V84: ^ 218 #CHECK-NO-V84: warning: invalid instruction encoding 219 #CHECK-NO-V84: [0x53,0x03,0x00,0x99] 220 #CHECK-NO-V84: ^ 221 #CHECK-NO-V84: warning: invalid instruction encoding 222 #CHECK-NO-V84: [0x53,0x03,0x10,0x99] 223 #CHECK-NO-V84: ^ 224 #CHECK-NO-V84: warning: invalid instruction encoding 225 #CHECK-NO-V84: [0x74,0xf3,0x0f,0x99] 226 #CHECK-NO-V84: ^ 227 #CHECK-NO-V84: warning: invalid instruction encoding 228 #CHECK-NO-V84: [0xf5,0x53,0x00,0x99] 229 #CHECK-NO-V84: ^ 230 #CHECK-NO-V84: warning: invalid instruction encoding 231 #CHECK-NO-V84: [0x96,0x03,0x40,0x99] 232 #CHECK-NO-V84: ^ 233 #CHECK-NO-V84: warning: invalid instruction encoding 234 #CHECK-NO-V84: [0x96,0x03,0x50,0x99] 235 #CHECK-NO-V84: ^ 236 #CHECK-NO-V84: warning: invalid instruction encoding 237 #CHECK-NO-V84: [0xb7,0xf3,0x4f,0x99] 238 #CHECK-NO-V84: ^ 239 #CHECK-NO-V84: warning: invalid instruction encoding 240 #CHECK-NO-V84: [0xf8,0x63,0x40,0x99] 241 #CHECK-NO-V84: ^ 242 #CHECK-NO-V84: warning: invalid instruction encoding 243 #CHECK-NO-V84: [0xc6,0x03,0x80,0x99] 244 #CHECK-NO-V84: ^ 245 #CHECK-NO-V84: warning: invalid instruction encoding 246 #CHECK-NO-V84: [0xc6,0x03,0x90,0x99] 247 #CHECK-NO-V84: ^ 248 #CHECK-NO-V84: warning: invalid instruction encoding 249 #CHECK-NO-V84: [0x07,0xf0,0x8f,0x99] 250 #CHECK-NO-V84: ^ 251 #CHECK-NO-V84: warning: invalid instruction encoding 252 #CHECK-NO-V84: [0xe8,0x73,0x80,0x99] 253 #CHECK-NO-V84: ^ 254 #CHECK-NO-V84: warning: invalid instruction encoding 255 #CHECK-NO-V84: [0x29,0x00,0x00,0xd9] 256 #CHECK-NO-V84: ^ 257 #CHECK-NO-V84: warning: invalid instruction encoding 258 #CHECK-NO-V84: [0x29,0x00,0x10,0xd9] 259 #CHECK-NO-V84: ^ 260 #CHECK-NO-V84: warning: invalid instruction encoding 261 #CHECK-NO-V84: [0x4a,0xf0,0x0f,0xd9] 262 #CHECK-NO-V84: ^ 263 #CHECK-NO-V84: warning: invalid instruction encoding 264 #CHECK-NO-V84: [0xeb,0x83,0x00,0xd9] 265 #CHECK-NO-V84: ^ 266 #CHECK-NO-V84: warning: invalid instruction encoding 267 #CHECK-NO-V84: [0x6c,0x00,0x40,0xd9] 268 #CHECK-NO-V84: ^ 269 #CHECK-NO-V84: warning: invalid instruction encoding 270 #CHECK-NO-V84: [0x6c,0x00,0x50,0xd9] 271 #CHECK-NO-V84: ^ 272 #CHECK-NO-V84: warning: invalid instruction encoding 273 #CHECK-NO-V84: [0x8d,0xf0,0x4f,0xd9] 274 #CHECK-NO-V84: ^ 275 #CHECK-NO-V84: warning: invalid instruction encoding 276 #CHECK-NO-V84: [0xee,0x93,0x40,0xd9] 277 #CHECK-NO-V84: ^ 278