# RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8.3a --disassemble < %s 2>&1 | FileCheck %s # RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8r --disassemble < %s 2>&1 | FileCheck %s # RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+pauth --disassemble < %s 2>&1 | FileCheck %s # CHECK: warning: potentially undefined instruction encoding # CHECK-NEXT: [0x00,0x0c,0x20,0xf8] # CHECK: warning: potentially undefined instruction encoding # CHECK-NEXT: [0x00,0x0c,0xa0,0xf8] # CHECK: ldraa x0, [x0, #0]! # CHECK: ldrab x0, [x0, #0]! [0x00,0x0c,0x20,0xf8] [0x00,0x0c,0xa0,0xf8] # CHECK: paciasp # CHECK: autiasp # CHECK: paciaz # CHECK: autiaz # CHECK: pacia1716 # CHECK: autia1716 # CHECK: pacibsp # CHECK: autibsp # CHECK: pacibz # CHECK: autibz # CHECK: pacib1716 # CHECK: autib1716 # CHECK: xpaclri [0x3f,0x23,0x03,0xd5] [0xbf,0x23,0x03,0xd5] [0x1f,0x23,0x03,0xd5] [0x9f,0x23,0x03,0xd5] [0x1f,0x21,0x03,0xd5] [0x9f,0x21,0x03,0xd5] [0x7f,0x23,0x03,0xd5] [0xff,0x23,0x03,0xd5] [0x5f,0x23,0x03,0xd5] [0xdf,0x23,0x03,0xd5] [0x5f,0x21,0x03,0xd5] [0xdf,0x21,0x03,0xd5] [0xff,0x20,0x03,0xd5] # CHECK: pacia x0, x1 # CHECK: autia x0, x1 # CHECK: pacda x0, x1 # CHECK: autda x0, x1 # CHECK: pacib x0, x1 # CHECK: autib x0, x1 # CHECK: pacdb x0, x1 # CHECK: autdb x0, x1 # CHECK: pacga x0, x1, x2 # CHECK: paciza x0 # CHECK: autiza x0 # CHECK: pacdza x0 # CHECK: autdza x0 # CHECK: pacizb x0 # CHECK: autizb x0 # CHECK: pacdzb x0 # CHECK: autdzb x0 # CHECK: xpaci x0 # CHECK: xpacd x0 [0x20,0x00,0xc1,0xda] [0x20,0x10,0xc1,0xda] [0x20,0x08,0xc1,0xda] [0x20,0x18,0xc1,0xda] [0x20,0x04,0xc1,0xda] [0x20,0x14,0xc1,0xda] [0x20,0x0c,0xc1,0xda] [0x20,0x1c,0xc1,0xda] [0x20,0x30,0xc2,0x9a] [0xe0,0x23,0xc1,0xda] [0xe0,0x33,0xc1,0xda] [0xe0,0x2b,0xc1,0xda] [0xe0,0x3b,0xc1,0xda] [0xe0,0x27,0xc1,0xda] [0xe0,0x37,0xc1,0xda] [0xe0,0x2f,0xc1,0xda] [0xe0,0x3f,0xc1,0xda] [0xe0,0x43,0xc1,0xda] [0xe0,0x47,0xc1,0xda] # CHECK: braa x0, x1 # CHECK: brab x0, x1 # CHECK: blraa x0, x1 # CHECK: blrab x0, x1 [0x01,0x08,0x1f,0xd7] [0x01,0x0c,0x1f,0xd7] [0x01,0x08,0x3f,0xd7] [0x01,0x0c,0x3f,0xd7] # CHECK: braaz x0 # CHECK: brabz x0 # CHECK: blraaz x0 # CHECK: blrabz x0 # CHECK: retaa # CHECK: retab # CHECK: eretaa # CHECK: eretab [0x1f,0x08,0x1f,0xd6] [0x1f,0x0c,0x1f,0xd6] [0x1f,0x08,0x3f,0xd6] [0x1f,0x0c,0x3f,0xd6] [0xff,0x0b,0x5f,0xd6] [0xff,0x0f,0x5f,0xd6] [0xff,0x0b,0x9f,0xd6] [0xff,0x0f,0x9f,0xd6] # CHECK: ldraa x0, [x1, #4088] # CHECK: ldraa x0, [x1, #-4096] # CHECK: ldrab x0, [x1, #4088] # CHECK: ldrab x0, [x1, #-4096] # CHECK: ldraa x0, [x1, #4088]! # CHECK: ldraa x0, [x1, #-4096]! # CHECK: ldrab x0, [x1, #4088]! # CHECK: ldrab x0, [x1, #-4096]! [0x20,0xf4,0x3f,0xf8] [0x20,0x04,0x60,0xf8] [0x20,0xf4,0xbf,0xf8] [0x20,0x04,0xe0,0xf8] [0x20,0xfc,0x3f,0xf8] [0x20,0x0c,0x60,0xf8] [0x20,0xfc,0xbf,0xf8] [0x20,0x0c,0xe0,0xf8] # CHECK: ldraa x0, [x1] # CHECK: ldrab x0, [x1] [0x20,0x04,0x20,0xf8] [0x20,0x04,0xa0,0xf8] # CHECK: ldraa x0, [x1, #0]! # CHECK: ldrab x0, [x1, #0]! [0x20,0x0c,0x20,0xf8] [0x20,0x0c,0xa0,0xf8]