# RUN: llvm-mc -triple=aarch64 -mattr=+specrestrict -disassemble < %s | FileCheck %s
# RUN: llvm-mc -triple=aarch64 -mattr=+v8.5a -disassemble < %s | FileCheck %s
# RUN: llvm-mc -triple=aarch64 -mattr=+v8r -disassemble < %s | FileCheck %s
# RUN: llvm-mc -triple=aarch64 -mattr=-specrestrict -disassemble < %s | FileCheck %s --check-prefix=NOSPECID
[0x81 0x03 0x38 0xd5]
# CHECK: mrs x1, {{id_pfr2_el1|ID_PFR2_EL1}}
# NOSPECID: mrs x1, S3_0_C0_C3_4
[0xe8 0xd0 0x3b 0xd5]
[0xe7 0xd0 0x38 0xd5]
[0xe6 0xd0 0x3c 0xd5]
[0xe5 0xd0 0x3e 0xd5]
[0xe4 0xd0 0x3d 0xd5]
# CHECK: mrs x8, {{scxtnum_el0|SCXTNUM_EL0}}
# CHECK: mrs x7, {{scxtnum_el1|SCXTNUM_EL1}}
# CHECK: mrs x6, {{scxtnum_el2|SCXTNUM_EL2}}
# CHECK: mrs x5, {{scxtnum_el3|SCXTNUM_EL3}}
# CHECK: mrs x4, {{scxtnum_el12|SCXTNUM_EL12}}
# NOSPECID: mrs x8, S3_3_C13_C0_7
# NOSPECID: mrs x7, S3_0_C13_C0_7
# NOSPECID: mrs x6, S3_4_C13_C0_7
# NOSPECID: mrs x5, S3_6_C13_C0_7
# NOSPECID: mrs x4, S3_5_C13_C0_7
[0xe8 0xd0 0x1b 0xd5]
[0xe7 0xd0 0x18 0xd5]
[0xe6 0xd0 0x1c 0xd5]
[0xe5 0xd0 0x1e 0xd5]
[0xe4 0xd0 0x1d 0xd5]
# CHECK: msr {{scxtnum_el0|SCXTNUM_EL0}}, x8
# CHECK: msr {{scxtnum_el1|SCXTNUM_EL1}}, x7
# CHECK: msr {{scxtnum_el2|SCXTNUM_EL2}}, x6
# CHECK: msr {{scxtnum_el3|SCXTNUM_EL3}}, x5
# CHECK: msr {{scxtnum_el12|SCXTNUM_EL12}}, x4
# NOSPECID: msr S3_3_C13_C0_7, x8
# NOSPECID: msr S3_0_C13_C0_7, x7
# NOSPECID: msr S3_4_C13_C0_7, x6
# NOSPECID: msr S3_6_C13_C0_7, x5
# NOSPECID: msr S3_5_C13_C0_7, x4