test_cases:
  -
    input:
      bytes: [ 0x00, 0x00, 0x20, 0x84 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb pldl1keep, p0, [x0, z0.s, uxtw]"

  -
    input:
      bytes: [ 0x45, 0x15, 0x35, 0x84 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb pldl3strm, p5, [x10, z21.s, uxtw]"

  -
    input:
      bytes: [ 0x00, 0x00, 0x20, 0xc4 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb pldl1keep, p0, [x0, z0.d, uxtw]"

  -
    input:
      bytes: [ 0x45, 0x15, 0x75, 0xc4 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb pldl3strm, p5, [x10, z21.d, sxtw]"

  -
    input:
      bytes: [ 0x00, 0x80, 0x60, 0xc4 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb pldl1keep, p0, [x0, z0.d]"

  -
    input:
      bytes: [ 0xa7, 0xed, 0x00, 0x84 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb #7, p3, [z13.s]"

  -
    input:
      bytes: [ 0xa7, 0xed, 0x1f, 0x84 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb #7, p3, [z13.s, #31]"

  -
    input:
      bytes: [ 0x45, 0xf5, 0x00, 0xc4 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb pldl3strm, p5, [z10.d]"

  -
    input:
      bytes: [ 0x45, 0xf5, 0x1f, 0xc4 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_NO_BRANCH_OFFSET", "aarch64", "sve" ]
    expected:
      insns:
        -
          asm_text: "prfb pldl3strm, p5, [z10.d, #31]"
