test_cases:
  -
    input:
      bytes: [ 0x18, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pldkeep, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pstkeep, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #2, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #3, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pldstrm, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pststrm, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #6, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #7, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #8, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #9, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #10, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #11, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #12, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #13, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #14, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #15, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #16, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #17, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #18, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #19, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #20, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #21, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #22, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #23, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #24, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #25, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #26, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #27, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #28, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #29, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #30, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #31, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #32, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #33, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #34, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #35, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #36, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #37, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #38, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #39, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #40, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #41, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #42, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #43, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #44, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #45, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #46, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #47, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #48, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #49, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #50, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #51, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #52, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #53, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #54, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #55, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #56, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #57, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #58, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #59, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #60, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #61, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #62, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #63, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pldkeep, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pstkeep, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #2, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #3, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pldstrm, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm pststrm, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #6, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x48, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #7, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #8, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #9, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #10, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #11, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #12, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #13, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #14, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x58, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #15, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #16, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #17, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #18, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #19, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #20, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #21, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #22, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x68, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #23, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #24, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #25, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #26, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #27, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #28, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #29, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #30, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0x78, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #31, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #32, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #33, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #34, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #35, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #36, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #37, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #38, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xc8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #39, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #40, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #41, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #42, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #43, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #44, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #45, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #46, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xd8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #47, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #48, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #49, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #50, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #51, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #52, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #53, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #54, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xe8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #55, x0, [x0]"

  -
    input:
      bytes: [ 0x18, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #56, x0, [x0]"

  -
    input:
      bytes: [ 0x19, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #57, x0, [x0]"

  -
    input:
      bytes: [ 0x1a, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #58, x0, [x0]"

  -
    input:
      bytes: [ 0x1b, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #59, x0, [x0]"

  -
    input:
      bytes: [ 0x1c, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #60, x0, [x0]"

  -
    input:
      bytes: [ 0x1d, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #61, x0, [x0]"

  -
    input:
      bytes: [ 0x1e, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #62, x0, [x0]"

  -
    input:
      bytes: [ 0x1f, 0xf8, 0xa0, 0xf8 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64" ]
    expected:
      insns:
        -
          asm_text: "rprfm #63, x0, [x0]"
