99 lines · plain
1// RUN: not llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+spe < %s 2> %t | FileCheck %s2// RUN: FileCheck --check-prefix=ERROR %s < %t3// RUN: not llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mcpu=neoverse-n1 < %s 2> %t | FileCheck %s4// RUN: FileCheck --check-prefix=ERROR %s < %t5// RUN: not llvm-mc -triple aarch64-none-linux-gnu -show-encoding < %s 2> %t | FileCheck --check-prefix=NO_SPE_OUT %s6// RUN: FileCheck --check-prefix=NO_SPE %s < %t7 8// NO_SPE_OUT-NOT: msr9// NO_SPE_OUT-NOT: mrs10// NO_SPE_OUT-NOT: psb11 12 psb csync13// CHECK: psb csync // encoding: [0x3f,0x22,0x03,0xd5]14// NO_SPE: instruction requires: spe15 16 msr pmblimitr_el1, x017 msr pmbptr_el1, x018 msr pmbsr_el1, x019 msr pmscr_el2, x020 msr pmscr_el12, x021 msr pmscr_el1, x022 msr pmsicr_el1, x023 msr pmsirr_el1, x024 msr pmsfcr_el1, x025 msr pmsevfr_el1, x026 msr pmslatfr_el1, x027// CHECK: msr PMBLIMITR_EL1, x0 // encoding: [0x00,0x9a,0x18,0xd5]28// CHECK: msr PMBPTR_EL1, x0 // encoding: [0x20,0x9a,0x18,0xd5]29// CHECK: msr PMBSR_EL1, x0 // encoding: [0x60,0x9a,0x18,0xd5]30// CHECK: msr PMSCR_EL2, x0 // encoding: [0x00,0x99,0x1c,0xd5]31// CHECK: msr PMSCR_EL12, x0 // encoding: [0x00,0x99,0x1d,0xd5]32// CHECK: msr PMSCR_EL1, x0 // encoding: [0x00,0x99,0x18,0xd5]33// CHECK: msr PMSICR_EL1, x0 // encoding: [0x40,0x99,0x18,0xd5]34// CHECK: msr PMSIRR_EL1, x0 // encoding: [0x60,0x99,0x18,0xd5]35// CHECK: msr PMSFCR_EL1, x0 // encoding: [0x80,0x99,0x18,0xd5]36// CHECK: msr PMSEVFR_EL1, x0 // encoding: [0xa0,0x99,0x18,0xd5]37// CHECK: msr PMSLATFR_EL1, x0 // encoding: [0xc0,0x99,0x18,0xd5]38// NO_SPE: error: expected writable system register or pstate39// NO_SPE: error: expected writable system register or pstate40// NO_SPE: error: expected writable system register or pstate41// NO_SPE: error: expected writable system register or pstate42// NO_SPE: error: expected writable system register or pstate43// NO_SPE: error: expected writable system register or pstate44// NO_SPE: error: expected writable system register or pstate45// NO_SPE: error: expected writable system register or pstate46// NO_SPE: error: expected writable system register or pstate47// NO_SPE: error: expected writable system register or pstate48// NO_SPE: error: expected writable system register or pstate49 50 51// Readonly system registers: writing to them gives an error52 msr pmbidr_el1, x053 msr pmsidr_el1, x054// ERROR: :[[@LINE-2]]:7: error: expected writable system register or pstate55// ERROR: :[[@LINE-2]]:7: error: expected writable system register or pstate56// NO_SPE: :[[@LINE-4]]:7: error: expected writable system register or pstate57// NO_SPE: :[[@LINE-4]]:7: error: expected writable system register or pstate58 59mrs x0, pmblimitr_el160 mrs x0, pmbptr_el161 mrs x0, pmbsr_el162 mrs x0, pmbidr_el163 mrs x0, pmscr_el264 mrs x0, pmscr_el1265 mrs x0, pmscr_el166 mrs x0, pmsicr_el167 mrs x0, pmsirr_el168 mrs x0, pmsfcr_el169 mrs x0, pmsevfr_el170 mrs x0, pmslatfr_el171 mrs x0, pmsidr_el172 73// CHECK: mrs x0, PMBLIMITR_EL1 // encoding: [0x00,0x9a,0x38,0xd5]74// CHECK: mrs x0, PMBPTR_EL1 // encoding: [0x20,0x9a,0x38,0xd5]75// CHECK: mrs x0, PMBSR_EL1 // encoding: [0x60,0x9a,0x38,0xd5]76// CHECK: mrs x0, PMBIDR_EL1 // encoding: [0xe0,0x9a,0x38,0xd5]77// CHECK: mrs x0, PMSCR_EL2 // encoding: [0x00,0x99,0x3c,0xd5]78// CHECK: mrs x0, PMSCR_EL12 // encoding: [0x00,0x99,0x3d,0xd5]79// CHECK: mrs x0, PMSCR_EL1 // encoding: [0x00,0x99,0x38,0xd5]80// CHECK: mrs x0, PMSICR_EL1 // encoding: [0x40,0x99,0x38,0xd5]81// CHECK: mrs x0, PMSIRR_EL1 // encoding: [0x60,0x99,0x38,0xd5]82// CHECK: mrs x0, PMSFCR_EL1 // encoding: [0x80,0x99,0x38,0xd5]83// CHECK: mrs x0, PMSEVFR_EL1 // encoding: [0xa0,0x99,0x38,0xd5]84// CHECK: mrs x0, PMSLATFR_EL1 // encoding: [0xc0,0x99,0x38,0xd5]85// CHECK: mrs x0, PMSIDR_EL1 // encoding: [0xe0,0x99,0x38,0xd5]86// NO_SPE: error: expected readable system register87// NO_SPE: error: expected readable system register88// NO_SPE: error: expected readable system register89// NO_SPE: error: expected readable system register90// NO_SPE: error: expected readable system register91// NO_SPE: error: expected readable system register92// NO_SPE: error: expected readable system register93// NO_SPE: error: expected readable system register94// NO_SPE: error: expected readable system register95// NO_SPE: error: expected readable system register96// NO_SPE: error: expected readable system register97// NO_SPE: error: expected readable system register98// NO_SPE: error: expected readable system register99