test_cases:
  -
    input:
      bytes: [ 0x20, 0xa4, 0x08, 0x2f ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "neon" ]
    expected:
      insns:
        -
          asm_text: "ushll v0.8h, v1.8b, #0"

  -
    input:
      bytes: [ 0x20, 0xa4, 0x10, 0x2f ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "neon" ]
    expected:
      insns:
        -
          asm_text: "ushll v0.4s, v1.4h, #0"

  -
    input:
      bytes: [ 0x20, 0xa4, 0x20, 0x2f ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "neon" ]
    expected:
      insns:
        -
          asm_text: "ushll v0.2d, v1.2s, #0"

  -
    input:
      bytes: [ 0x20, 0xa4, 0x08, 0x6f ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "neon" ]
    expected:
      insns:
        -
          asm_text: "ushll2 v0.8h, v1.16b, #0"

  -
    input:
      bytes: [ 0x20, 0xa4, 0x10, 0x6f ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "neon" ]
    expected:
      insns:
        -
          asm_text: "ushll2 v0.4s, v1.8h, #0"

  -
    input:
      bytes: [ 0x20, 0xa4, 0x20, 0x6f ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "neon" ]
    expected:
      insns:
        -
          asm_text: "ushll2 v0.2d, v1.4s, #0"
