1# RUN: llvm-mc -triple=aarch64 -mattr=+mte -disassemble < %s | FileCheck %s 2# RUN: not llvm-mc -triple=aarch64 -mattr=+v8.5a -disassemble < %s 2>&1 | FileCheck %s --check-prefix=NOMTE 3# RUN: not llvm-mc -triple=aarch64 -mattr=-mte -disassemble < %s 2>&1 | FileCheck %s --check-prefix=NOMTE 4 5[0x20,0x10,0xdf,0x9a] 6[0x3f,0x10,0xdf,0x9a] 7[0xe0,0x13,0xdf,0x9a] 8[0x20,0x10,0xc2,0x9a] 9[0x3f,0x10,0xc2,0x9a] 10 11# CHECK: irg x0, x1 12# CHECK: irg sp, x1 13# CHECK: irg x0, sp 14# CHECK: irg x0, x1, x2 15# CHECK: irg sp, x1, x2 16 17# NOMTE: warning: invalid instruction encoding 18# NOMTE-NEXT: [0x20,0x10,0xdf,0x9a] 19# NOMTE: warning: invalid instruction encoding 20# NOMTE-NEXT: [0x3f,0x10,0xdf,0x9a] 21# NOMTE: warning: invalid instruction encoding 22# NOMTE-NEXT: [0xe0,0x13,0xdf,0x9a] 23# NOMTE: warning: invalid instruction encoding 24# NOMTE-NEXT: [0x20,0x10,0xc2,0x9a] 25# NOMTE: warning: invalid instruction encoding 26# NOMTE-NEXT: [0x3f,0x10,0xc2,0x9a] 27 28[0x20,0x04,0x80,0x91] 29[0x5f,0x0c,0x82,0x91] 30[0xe0,0x17,0x84,0x91] 31[0x83,0x18,0xbf,0x91] 32[0xc5,0x3c,0x87,0x91] 33 34[0x20,0x04,0x80,0xd1] 35[0x5f,0x0c,0x82,0xd1] 36[0xe0,0x17,0x84,0xd1] 37[0x83,0x18,0xbf,0xd1] 38[0xc5,0x3c,0x87,0xd1] 39 40# CHECK: addg x0, x1, #0, #1 41# CHECK: addg sp, x2, #32, #3 42# CHECK: addg x0, sp, #64, #5 43# CHECK: addg x3, x4, #1008, #6 44# CHECK: addg x5, x6, #112, #15 45 46# CHECK: subg x0, x1, #0, #1 47# CHECK: subg sp, x2, #32, #3 48# CHECK: subg x0, sp, #64, #5 49# CHECK: subg x3, x4, #1008, #6 50# CHECK: subg x5, x6, #112, #15 51 52# NOMTE: warning: invalid instruction encoding 53# NOMTE-NEXT: [0x20,0x04,0x80,0x91] 54# NOMTE: warning: invalid instruction encoding 55# NOMTE-NEXT: [0x5f,0x0c,0x82,0x91] 56# NOMTE: warning: invalid instruction encoding 57# NOMTE-NEXT: [0xe0,0x17,0x84,0x91] 58# NOMTE: warning: invalid instruction encoding 59# NOMTE-NEXT: [0x83,0x18,0xbf,0x91] 60# NOMTE: warning: invalid instruction encoding 61# NOMTE-NEXT: [0xc5,0x3c,0x87,0x91] 62 63# NOMTE: warning: invalid instruction encoding 64# NOMTE-NEXT: [0x20,0x04,0x80,0xd1] 65# NOMTE: warning: invalid instruction encoding 66# NOMTE-NEXT: [0x5f,0x0c,0x82,0xd1] 67# NOMTE: warning: invalid instruction encoding 68# NOMTE-NEXT: [0xe0,0x17,0x84,0xd1] 69# NOMTE: warning: invalid instruction encoding 70# NOMTE-NEXT: [0x83,0x18,0xbf,0xd1] 71# NOMTE: warning: invalid instruction encoding 72# NOMTE-NEXT: [0xc5,0x3c,0x87,0xd1] 73 74[0x20,0x14,0xc2,0x9a] 75[0xe3,0x17,0xc4,0x9a] 76[0x1f,0x14,0xde,0x9a] 77[0x1e,0x14,0xdf,0x9a] 78 79# CHECK: gmi x0, x1, x2 80# CHECK: gmi x3, sp, x4 81# CHECK: gmi xzr, x0, x30 82# CHECK: gmi x30, x0, xzr 83 84# NOMTE: warning: invalid instruction encoding 85# NOMTE-NEXT: [0x20,0x14,0xc2,0x9a] 86# NOMTE: warning: invalid instruction encoding 87# NOMTE-NEXT: [0xe3,0x17,0xc4,0x9a] 88# NOMTE: warning: invalid instruction encoding 89# NOMTE-NEXT: [0x1f,0x14,0xde,0x9a] 90# NOMTE: warning: invalid instruction encoding 91# NOMTE-NEXT: [0x1e,0x14,0xdf,0x9a] 92 93[0x20,0x00,0xc2,0x9a] 94[0x20,0x00,0xc2,0xba] 95[0xe0,0x03,0xdf,0x9a] 96[0xe0,0x03,0xdf,0xba] 97[0x1f,0x00,0xc1,0xba] 98[0xff,0x03,0xdf,0xba] 99 100# CHECK: subp x0, x1, x2 101# CHECK: subps x0, x1, x2 102# CHECK: subp x0, sp, sp 103# CHECK: subps x0, sp, sp 104# CHECK: subps xzr, x0, x1 105# CHECK: subps xzr, sp, sp 106 107# NOMTE: warning: invalid instruction encoding 108# NOMTE-NEXT: [0x20,0x00,0xc2,0x9a] 109# NOMTE: warning: invalid instruction encoding 110# NOMTE-NEXT: [0x20,0x00,0xc2,0xba] 111# NOMTE: warning: invalid instruction encoding 112# NOMTE-NEXT: [0xe0,0x03,0xdf,0x9a] 113# NOMTE: warning: invalid instruction encoding 114# NOMTE-NEXT: [0xe0,0x03,0xdf,0xba] 115# NOMTE: warning: invalid instruction encoding 116# NOMTE-NEXT: [0x1f,0x00,0xc1,0xba] 117# NOMTE: warning: invalid instruction encoding 118# NOMTE-NEXT: [0xff,0x03,0xdf,0xba] 119 120[0x20,0x08,0x30,0xd9] 121[0x41,0xf8,0x2f,0xd9] 122[0xe2,0x1b,0x20,0xd9] 123[0x23,0x08,0x20,0xd9] 124[0x3f,0x08,0x20,0xd9] 125 126# CHECK: stg x0, [x1, #-4096] 127# CHECK: stg x1, [x2, #4080] 128# CHECK: stg x2, [sp, #16] 129# CHECK: stg x3, [x1] 130# CHECK: stg sp, [x1] 131 132 133# NOMTE: warning: invalid instruction encoding 134# NOMTE-NEXT: [0x20,0x08,0x30,0xd9] 135# NOMTE: warning: invalid instruction encoding 136# NOMTE-NEXT: [0x41,0xf8,0x2f,0xd9] 137# NOMTE: warning: invalid instruction encoding 138# NOMTE-NEXT: [0xe2,0x1b,0x20,0xd9] 139# NOMTE: warning: invalid instruction encoding 140# NOMTE-NEXT: [0x23,0x08,0x20,0xd9] 141# NOMTE: warning: invalid instruction encoding 142# NOMTE-NEXT: [0x3f,0x08,0x20,0xd9] 143 144[0x20,0x08,0x70,0xd9] 145[0x41,0xf8,0x6f,0xd9] 146[0xe2,0x1b,0x60,0xd9] 147[0x23,0x08,0x60,0xd9] 148[0x3f,0x08,0x60,0xd9] 149 150# CHECK: stzg x0, [x1, #-4096] 151# CHECK: stzg x1, [x2, #4080] 152# CHECK: stzg x2, [sp, #16] 153# CHECK: stzg x3, [x1] 154# CHECK: stzg sp, [x1] 155 156# NOMTE: warning: invalid instruction encoding 157# NOMTE-NEXT: [0x20,0x08,0x70,0xd9] 158# NOMTE: warning: invalid instruction encoding 159# NOMTE-NEXT: [0x41,0xf8,0x6f,0xd9] 160# NOMTE: warning: invalid instruction encoding 161# NOMTE-NEXT: [0xe2,0x1b,0x60,0xd9] 162# NOMTE: warning: invalid instruction encoding 163# NOMTE-NEXT: [0x23,0x08,0x60,0xd9] 164# NOMTE: warning: invalid instruction encoding 165# NOMTE-NEXT: [0x3f,0x08,0x60,0xd9] 166 167[0x20,0x0c,0x30,0xd9] 168[0x41,0xfc,0x2f,0xd9] 169[0xe2,0x1f,0x20,0xd9] 170[0xff,0x1f,0x20,0xd9] 171 172# CHECK: stg x0, [x1, #-4096]! 173# CHECK: stg x1, [x2, #4080]! 174# CHECK: stg x2, [sp, #16]! 175# CHECK: stg sp, [sp, #16]! 176 177# NOMTE: warning: invalid instruction encoding 178# NOMTE-NEXT: [0x20,0x0c,0x30,0xd9] 179# NOMTE: warning: invalid instruction encoding 180# NOMTE-NEXT: [0x41,0xfc,0x2f,0xd9] 181# NOMTE: warning: invalid instruction encoding 182# NOMTE-NEXT: [0xe2,0x1f,0x20,0xd9] 183# NOMTE: warning: invalid instruction encoding 184# NOMTE-NEXT: [0xff,0x1f,0x20,0xd9] 185 186[0x20,0x0c,0x70,0xd9] 187[0x41,0xfc,0x6f,0xd9] 188[0xe2,0x1f,0x60,0xd9] 189[0xff,0x1f,0x60,0xd9] 190 191# CHECK: stzg x0, [x1, #-4096]! 192# CHECK: stzg x1, [x2, #4080]! 193# CHECK: stzg x2, [sp, #16]! 194# CHECK: stzg sp, [sp, #16]! 195 196# NOMTE: warning: invalid instruction encoding 197# NOMTE-NEXT: [0x20,0x0c,0x70,0xd9] 198# NOMTE: warning: invalid instruction encoding 199# NOMTE-NEXT: [0x41,0xfc,0x6f,0xd9] 200# NOMTE: warning: invalid instruction encoding 201# NOMTE-NEXT: [0xe2,0x1f,0x60,0xd9] 202# NOMTE: warning: invalid instruction encoding 203# NOMTE-NEXT: [0xff,0x1f,0x60,0xd9] 204 205[0x20,0x04,0x30,0xd9] 206[0x41,0xf4,0x2f,0xd9] 207[0xe2,0x17,0x20,0xd9] 208[0xff,0x17,0x20,0xd9] 209 210# CHECK: stg x0, [x1], #-4096 211# CHECK: stg x1, [x2], #4080 212# CHECK: stg x2, [sp], #16 213# CHECK: stg sp, [sp], #16 214 215# NOMTE: warning: invalid instruction encoding 216# NOMTE-NEXT: [0x20,0x04,0x30,0xd9] 217# NOMTE: warning: invalid instruction encoding 218# NOMTE-NEXT: [0x41,0xf4,0x2f,0xd9] 219# NOMTE: warning: invalid instruction encoding 220# NOMTE-NEXT: [0xe2,0x17,0x20,0xd9] 221# NOMTE: warning: invalid instruction encoding 222# NOMTE-NEXT: [0xff,0x17,0x20,0xd9] 223 224[0x20,0x04,0x70,0xd9] 225[0x41,0xf4,0x6f,0xd9] 226[0xe2,0x17,0x60,0xd9] 227[0xff,0x17,0x60,0xd9] 228 229# CHECK: stzg x0, [x1], #-4096 230# CHECK: stzg x1, [x2], #4080 231# CHECK: stzg x2, [sp], #16 232# CHECK: stzg sp, [sp], #16 233 234# NOMTE: warning: invalid instruction encoding 235# NOMTE-NEXT: [0x20,0x04,0x70,0xd9] 236# NOMTE: warning: invalid instruction encoding 237# NOMTE-NEXT: [0x41,0xf4,0x6f,0xd9] 238# NOMTE: warning: invalid instruction encoding 239# NOMTE-NEXT: [0xe2,0x17,0x60,0xd9] 240# NOMTE: warning: invalid instruction encoding 241# NOMTE-NEXT: [0xff,0x17,0x60,0xd9] 242 243[0x20,0x08,0xb0,0xd9] 244[0x41,0xf8,0xaf,0xd9] 245[0xe2,0x1b,0xa0,0xd9] 246[0x23,0x08,0xa0,0xd9] 247[0x3f,0x08,0xa0,0xd9] 248 249# CHECK: st2g x0, [x1, #-4096] 250# CHECK: st2g x1, [x2, #4080] 251# CHECK: st2g x2, [sp, #16] 252# CHECK: st2g x3, [x1] 253# CHECK: st2g sp, [x1] 254 255# NOMTE: warning: invalid instruction encoding 256# NOMTE-NEXT: [0x20,0x08,0xb0,0xd9] 257# NOMTE: warning: invalid instruction encoding 258# NOMTE-NEXT: [0x41,0xf8,0xaf,0xd9] 259# NOMTE: warning: invalid instruction encoding 260# NOMTE-NEXT: [0xe2,0x1b,0xa0,0xd9] 261# NOMTE: warning: invalid instruction encoding 262# NOMTE-NEXT: [0x23,0x08,0xa0,0xd9] 263# NOMTE: warning: invalid instruction encoding 264# NOMTE-NEXT: [0x3f,0x08,0xa0,0xd9] 265 266[0x20,0x08,0xf0,0xd9] 267[0x41,0xf8,0xef,0xd9] 268[0xe2,0x1b,0xe0,0xd9] 269[0x23,0x08,0xe0,0xd9] 270[0x3f,0x08,0xe0,0xd9] 271 272# CHECK: stz2g x0, [x1, #-4096] 273# CHECK: stz2g x1, [x2, #4080] 274# CHECK: stz2g x2, [sp, #16] 275# CHECK: stz2g x3, [x1] 276# CHECK: stz2g sp, [x1] 277 278# NOMTE: warning: invalid instruction encoding 279# NOMTE-NEXT: [0x20,0x08,0xf0,0xd9] 280# NOMTE: warning: invalid instruction encoding 281# NOMTE-NEXT: [0x41,0xf8,0xef,0xd9] 282# NOMTE: warning: invalid instruction encoding 283# NOMTE-NEXT: [0xe2,0x1b,0xe0,0xd9] 284# NOMTE: warning: invalid instruction encoding 285# NOMTE-NEXT: [0x23,0x08,0xe0,0xd9] 286# NOMTE: warning: invalid instruction encoding 287# NOMTE-NEXT: [0x3f,0x08,0xe0,0xd9] 288 289[0x20,0x0c,0xb0,0xd9] 290[0x41,0xfc,0xaf,0xd9] 291[0xe2,0x1f,0xa0,0xd9] 292[0xff,0x1f,0xa0,0xd9] 293 294# CHECK: st2g x0, [x1, #-4096]! 295# CHECK: st2g x1, [x2, #4080]! 296# CHECK: st2g x2, [sp, #16]! 297# CHECK: st2g sp, [sp, #16]! 298 299# NOMTE: warning: invalid instruction encoding 300# NOMTE-NEXT: [0x20,0x0c,0xb0,0xd9] 301# NOMTE: warning: invalid instruction encoding 302# NOMTE-NEXT: [0x41,0xfc,0xaf,0xd9] 303# NOMTE: warning: invalid instruction encoding 304# NOMTE-NEXT: [0xe2,0x1f,0xa0,0xd9] 305# NOMTE: warning: invalid instruction encoding 306# NOMTE-NEXT: [0xff,0x1f,0xa0,0xd9] 307 308[0x20,0x0c,0xf0,0xd9] 309[0x41,0xfc,0xef,0xd9] 310[0xe2,0x1f,0xe0,0xd9] 311[0xff,0x1f,0xe0,0xd9] 312 313# CHECK: stz2g x0, [x1, #-4096]! 314# CHECK: stz2g x1, [x2, #4080]! 315# CHECK: stz2g x2, [sp, #16]! 316# CHECK: stz2g sp, [sp, #16]! 317 318# NOMTE: warning: invalid instruction encoding 319# NOMTE-NEXT: [0x20,0x0c,0xf0,0xd9] 320# NOMTE: warning: invalid instruction encoding 321# NOMTE-NEXT: [0x41,0xfc,0xef,0xd9] 322# NOMTE: warning: invalid instruction encoding 323# NOMTE-NEXT: [0xe2,0x1f,0xe0,0xd9] 324# NOMTE: warning: invalid instruction encoding 325# NOMTE-NEXT: [0xff,0x1f,0xe0,0xd9] 326 327[0x20,0x04,0xb0,0xd9] 328[0x41,0xf4,0xaf,0xd9] 329[0xe2,0x17,0xa0,0xd9] 330[0xff,0x17,0xa0,0xd9] 331 332# CHECK: st2g x0, [x1], #-4096 333# CHECK: st2g x1, [x2], #4080 334# CHECK: st2g x2, [sp], #16 335# CHECK: st2g sp, [sp], #16 336 337# NOMTE: warning: invalid instruction encoding 338# NOMTE-NEXT: [0x20,0x04,0xb0,0xd9] 339# NOMTE: warning: invalid instruction encoding 340# NOMTE-NEXT: [0x41,0xf4,0xaf,0xd9] 341# NOMTE: warning: invalid instruction encoding 342# NOMTE-NEXT: [0xe2,0x17,0xa0,0xd9] 343# NOMTE: warning: invalid instruction encoding 344# NOMTE-NEXT: [0xff,0x17,0xa0,0xd9] 345 346[0x20,0x04,0xf0,0xd9] 347[0x41,0xf4,0xef,0xd9] 348[0xe2,0x17,0xe0,0xd9] 349[0xff,0x17,0xe0,0xd9] 350 351# CHECK: stz2g x0, [x1], #-4096 352# CHECK: stz2g x1, [x2], #4080 353# CHECK: stz2g x2, [sp], #16 354# CHECK: stz2g sp, [sp], #16 355 356# NOMTE: warning: invalid instruction encoding 357# NOMTE-NEXT: [0x20,0x04,0xf0,0xd9] 358# NOMTE: warning: invalid instruction encoding 359# NOMTE-NEXT: [0x41,0xf4,0xef,0xd9] 360# NOMTE: warning: invalid instruction encoding 361# NOMTE-NEXT: [0xe2,0x17,0xe0,0xd9] 362# NOMTE: warning: invalid instruction encoding 363# NOMTE-NEXT: [0xff,0x17,0xe0,0xd9] 364 365[0x40,0x04,0x20,0x69] 366[0x40,0x84,0x1f,0x69] 367[0xe0,0x87,0x00,0x69] 368[0x5f,0x84,0x00,0x69] 369[0x40,0xfc,0x00,0x69] 370[0x40,0x7c,0x00,0x69] 371 372# CHECK: stgp x0, x1, [x2, #-1024] 373# CHECK: stgp x0, x1, [x2, #1008] 374# CHECK: stgp x0, x1, [sp, #16] 375# CHECK: stgp xzr, x1, [x2, #16] 376# CHECK: stgp x0, xzr, [x2, #16] 377# CHECK: stgp x0, xzr, [x2] 378 379# NOMTE: warning: invalid instruction encoding 380# NOMTE-NEXT: [0x40,0x04,0x20,0x69] 381# NOMTE: warning: invalid instruction encoding 382# NOMTE-NEXT: [0x40,0x84,0x1f,0x69] 383# NOMTE: warning: invalid instruction encoding 384# NOMTE-NEXT: [0xe0,0x87,0x00,0x69] 385# NOMTE: warning: invalid instruction encoding 386# NOMTE-NEXT: [0x5f,0x84,0x00,0x69] 387# NOMTE: warning: invalid instruction encoding 388# NOMTE-NEXT: [0x40,0xfc,0x00,0x69] 389# NOMTE: warning: invalid instruction encoding 390# NOMTE-NEXT: [0x40,0x7c,0x00,0x69] 391 392[0x40,0x04,0xa0,0x69] 393[0x40,0x84,0x9f,0x69] 394[0xe0,0x87,0x80,0x69] 395[0x5f,0x84,0x80,0x69] 396[0x40,0xfc,0x80,0x69] 397 398# CHECK: stgp x0, x1, [x2, #-1024]! 399# CHECK: stgp x0, x1, [x2, #1008]! 400# CHECK: stgp x0, x1, [sp, #16]! 401# CHECK: stgp xzr, x1, [x2, #16]! 402# CHECK: stgp x0, xzr, [x2, #16]! 403 404# NOMTE: warning: invalid instruction encoding 405# NOMTE-NEXT: [0x40,0x04,0xa0,0x69] 406# NOMTE: warning: invalid instruction encoding 407# NOMTE-NEXT: [0x40,0x84,0x9f,0x69] 408# NOMTE: warning: invalid instruction encoding 409# NOMTE-NEXT: [0xe0,0x87,0x80,0x69] 410# NOMTE: warning: invalid instruction encoding 411# NOMTE-NEXT: [0x5f,0x84,0x80,0x69] 412# NOMTE: warning: invalid instruction encoding 413# NOMTE-NEXT: [0x40,0xfc,0x80,0x69] 414 415[0x40,0x04,0xa0,0x68] 416[0x40,0x84,0x9f,0x68] 417[0xe0,0x87,0x80,0x68] 418[0x5f,0x84,0x80,0x68] 419[0x40,0xfc,0x80,0x68] 420 421# CHECK: stgp x0, x1, [x2], #-1024 422# CHECK: stgp x0, x1, [x2], #1008 423# CHECK: stgp x0, x1, [sp], #16 424# CHECK: stgp xzr, x1, [x2], #16 425# CHECK: stgp x0, xzr, [x2], #16 426 427# NOMTE: warning: invalid instruction encoding 428# NOMTE-NEXT: [0x40,0x04,0xa0,0x68] 429# NOMTE: warning: invalid instruction encoding 430# NOMTE-NEXT: [0x40,0x84,0x9f,0x68] 431# NOMTE: warning: invalid instruction encoding 432# NOMTE-NEXT: [0xe0,0x87,0x80,0x68] 433# NOMTE: warning: invalid instruction encoding 434# NOMTE-NEXT: [0x5f,0x84,0x80,0x68] 435# NOMTE: warning: invalid instruction encoding 436# NOMTE-NEXT: [0x40,0xfc,0x80,0x68] 437 438[0x20,0x00,0x60,0xd9] 439[0xe2,0x03,0x70,0xd9] 440[0x83,0xf0,0x6f,0xd9] 441 442# CHECK: ldg x0, [x1] 443# CHECK: ldg x2, [sp, #-4096] 444# CHECK: ldg x3, [x4, #4080] 445 446# NOMTE: warning: invalid instruction encoding 447# NOMTE-NEXT: [0x20,0x00,0x60,0xd9] 448# NOMTE: warning: invalid instruction encoding 449# NOMTE-NEXT: [0xe2,0x03,0x70,0xd9] 450# NOMTE: warning: invalid instruction encoding 451# NOMTE-NEXT: [0x83,0xf0,0x6f,0xd9] 452 453[0x20,0x00,0xe0,0xd9] 454[0xe1,0x03,0xe0,0xd9] 455[0x5f,0x00,0xe0,0xd9] 456[0x20,0x00,0xa0,0xd9] 457[0xe1,0x03,0xa0,0xd9] 458[0x5f,0x00,0xa0,0xd9] 459[0x20,0x00,0x20,0xd9] 460[0xe1,0x03,0x20,0xd9] 461[0x5f,0x00,0x20,0xd9] 462 463# CHECK: ldgm x0, [x1] 464# CHECK: ldgm x1, [sp] 465# CHECK: ldgm xzr, [x2] 466# CHECK: stgm x0, [x1] 467# CHECK: stgm x1, [sp] 468# CHECK: stgm xzr, [x2] 469# CHECK: stzgm x0, [x1] 470# CHECK: stzgm x1, [sp] 471# CHECK: stzgm xzr, [x2] 472 473# NOMTE: warning: invalid instruction encoding 474# NOMTE-NEXT: [0x20,0x00,0xe0,0xd9] 475# NOMTE: warning: invalid instruction encoding 476# NOMTE-NEXT: [0xe1,0x03,0xe0,0xd9] 477# NOMTE: warning: invalid instruction encoding 478# NOMTE-NEXT: [0x5f,0x00,0xe0,0xd9] 479# NOMTE: warning: invalid instruction encoding 480# NOMTE-NEXT: [0x20,0x00,0xa0,0xd9] 481# NOMTE: warning: invalid instruction encoding 482# NOMTE-NEXT: [0xe1,0x03,0xa0,0xd9] 483# NOMTE: warning: invalid instruction encoding 484# NOMTE-NEXT: [0x5f,0x00,0xa0,0xd9] 485# NOMTE: warning: invalid instruction encoding 486# NOMTE-NEXT: [0x20,0x00,0x20,0xd9] 487# NOMTE: warning: invalid instruction encoding 488# NOMTE-NEXT: [0xe1,0x03,0x20,0xd9] 489# NOMTE: warning: invalid instruction encoding 490# NOMTE-NEXT: [0x5f,0x00,0x20,0xd9] 491 492[0x60,0x76,0x08,0xd5] 493[0x81,0x76,0x08,0xd5] 494[0x82,0x7a,0x08,0xd5] 495[0x83,0x7e,0x08,0xd5] 496[0x64,0x7a,0x0b,0xd5] 497[0x65,0x7c,0x0b,0xd5] 498[0x66,0x7d,0x0b,0xd5] 499[0x67,0x7e,0x0b,0xd5] 500[0x68,0x74,0x0b,0xd5] 501[0xa9,0x76,0x08,0xd5] 502[0xca,0x76,0x08,0xd5] 503[0xcb,0x7a,0x08,0xd5] 504[0xcc,0x7e,0x08,0xd5] 505[0xad,0x7a,0x0b,0xd5] 506[0xae,0x7c,0x0b,0xd5] 507[0xaf,0x7d,0x0b,0xd5] 508[0xb0,0x7e,0x0b,0xd5] 509[0x91,0x74,0x0b,0xd5] 510 511# CHECK: dc igvac, x0 512# CHECK: dc igsw, x1 513# CHECK: dc cgsw, x2 514# CHECK: dc cigsw, x3 515# CHECK: dc cgvac, x4 516# CHECK: dc cgvap, x5 517# CHECK: dc cgvadp, x6 518# CHECK: dc cigvac, x7 519# CHECK: dc gva, x8 520# CHECK: dc igdvac, x9 521# CHECK: dc igdsw, x10 522# CHECK: dc cgdsw, x11 523# CHECK: dc cigdsw, x12 524# CHECK: dc cgdvac, x13 525# CHECK: dc cgdvap, x14 526# CHECK: dc cgdvadp, x15 527# CHECK: dc cigdvac, x16 528# CHECK: dc gzva, x17 529 530# NOMTE: sys #0, c7, c6, #3, x0 531# NOMTE: sys #0, c7, c6, #4, x1 532# NOMTE: sys #0, c7, c10, #4, x2 533# NOMTE: sys #0, c7, c14, #4, x3 534# NOMTE: sys #3, c7, c10, #3, x4 535# NOMTE: sys #3, c7, c12, #3, x5 536# NOMTE: sys #3, c7, c13, #3, x6 537# NOMTE: sys #3, c7, c14, #3, x7 538# NOMTE: sys #3, c7, c4, #3, x8 539# NOMTE: sys #0, c7, c6, #5, x9 540# NOMTE: sys #0, c7, c6, #6, x10 541# NOMTE: sys #0, c7, c10, #6, x11 542# NOMTE: sys #0, c7, c14, #6, x12 543# NOMTE: sys #3, c7, c10, #5, x13 544# NOMTE: sys #3, c7, c12, #5, x14 545# NOMTE: sys #3, c7, c13, #5, x15 546# NOMTE: sys #3, c7, c14, #5, x16 547# NOMTE: sys #3, c7, c4, #4, x17 548 549[0xe0,0x42,0x3b,0xd5] 550[0xc1,0x10,0x38,0xd5] 551[0xa2,0x10,0x38,0xd5] 552[0x03,0x56,0x38,0xd5] 553[0x04,0x56,0x3c,0xd5] 554[0x05,0x56,0x3e,0xd5] 555[0x06,0x56,0x3d,0xd5] 556[0x27,0x56,0x38,0xd5] 557[0x88,0x00,0x39,0xd5] 558 559# CHECK: mrs x0, TCO 560# CHECK: mrs x1, GCR_EL1 561# CHECK: mrs x2, RGSR_EL1 562# CHECK: mrs x3, TFSR_EL1 563# CHECK: mrs x4, TFSR_EL2 564# CHECK: mrs x5, TFSR_EL3 565# CHECK: mrs x6, TFSR_EL12 566# CHECK: mrs x7, TFSRE0_EL1 567# CHECK: mrs x8, GMID_EL1 568 569# NOMTE: mrs x0, S3_3_C4_C2_7 570# NOMTE: mrs x1, S3_0_C1_C0_6 571# NOMTE: mrs x2, S3_0_C1_C0_5 572# NOMTE: mrs x3, S3_0_C5_C6_0 573# NOMTE: mrs x4, S3_4_C5_C6_0 574# NOMTE: mrs x5, S3_6_C5_C6_0 575# NOMTE: mrs x6, S3_5_C5_C6_0 576# NOMTE: mrs x7, S3_0_C5_C6_1 577# NOMTE: mrs x8, S3_1_C0_C0_4 578 579[0x9f,0x40,0x03,0xd5] 580 581# CHECK: msr TCO, #0 582# NOMTE: msr S0_3_C4_C0_4, xzr 583 584[0xe0,0x42,0x1b,0xd5] 585[0xc1,0x10,0x18,0xd5] 586[0xa2,0x10,0x18,0xd5] 587[0x03,0x56,0x18,0xd5] 588[0x04,0x56,0x1c,0xd5] 589[0x05,0x56,0x1e,0xd5] 590[0x06,0x56,0x1d,0xd5] 591[0x27,0x56,0x18,0xd5] 592[0x88,0x00,0x19,0xd5] 593 594# CHECK: msr TCO, x0 595# CHECK: msr GCR_EL1, x1 596# CHECK: msr RGSR_EL1, x2 597# CHECK: msr TFSR_EL1, x3 598# CHECK: msr TFSR_EL2, x4 599# CHECK: msr TFSR_EL3, x5 600# CHECK: msr TFSR_EL12, x6 601# CHECK: msr TFSRE0_EL1, x7 602# GMID_EL1 is read only 603# CHECK: msr S3_1_C0_C0_4, x8 604 605# NOMTE: msr S3_3_C4_C2_7, x0 606# NOMTE: msr S3_0_C1_C0_6, x1 607# NOMTE: msr S3_0_C1_C0_5, x2 608# NOMTE: msr S3_0_C5_C6_0, x3 609# NOMTE: msr S3_4_C5_C6_0, x4 610# NOMTE: msr S3_6_C5_C6_0, x5 611# NOMTE: msr S3_5_C5_C6_0, x6 612# NOMTE: msr S3_0_C5_C6_1, x7 613# NOMTE: msr S3_1_C0_C0_4, x8 614