blob: 555b8c3c54d1c9913443d3906d0d032ca53c0a96 [file] [log] [blame]
# RUN: not llvm-mc -triple thumbv8 -mattr=+v8.1a --disassemble < %s 2>&1 | FileCheck %s
# Check, if sizes 00 and 11 are undefined for RDMA
[0x01,0xff,0x12,0x0b] # vqrdmlah.s8 d0, d1, d2
[0x31,0xff,0x12,0x0b] # vqrdmlah.s64 d0, d1, d2
[0x02,0xff,0x54,0x0b] # vqrdmlah.s8 q0, q1, q2
[0x06,0xff,0x50,0x4b] # vqrdmlah.s64 q2, q3, q0
[0x01,0xff,0x12,0x0c] # vqrdmlsh.s8 d0, d1, d2
[0x31,0xff,0x12,0x0c] # vqrdmlsh.s64 d0, d1, d2
[0x02,0xff,0x54,0x0c] # vqrdmlsh.s8 q0, q1, q2
[0x32,0xff,0x54,0x0c] # vqrdmlsh.s64 q0, q1, q2
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x01,0xff,0x12,0x0b] # vqrdmlah.s8 d0, d1, d2
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x31,0xff,0x12,0x0b] # vqrdmlah.s64 d0, d1, d2
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x02,0xff,0x54,0x0b] # vqrdmlah.s8 q0, q1, q2
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x06,0xff,0x50,0x4b] # vqrdmlah.s64 q2, q3, q0
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x01,0xff,0x12,0x0c] # vqrdmlsh.s8 d0, d1, d2
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x31,0xff,0x12,0x0c] # vqrdmlsh.s64 d0, d1, d2
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x02,0xff,0x54,0x0c] # vqrdmlsh.s8 q0, q1, q2
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x32,0xff,0x54,0x0c] # vqrdmlsh.s64 q0, q1, q2
# CHECK-NEXT: ^
[0x81,0xef,0x42,0x0e] # vqrdmlah.s8 d0, d1, d2[0]
[0xb1,0xef,0x42,0x0e] # vqrdmlah.s64 d0, d1, d2[0]
[0x82,0xff,0x42,0x0e] # vqrdmlah.s8 q0, q1, d2[0]
[0xb2,0xff,0x42,0x0e] # vqrdmlah.s64 q0, q1, d2[0]
[0x81,0xef,0x42,0x0f] # vqrdmlsh.s8 d0, d1, d2[0]
[0xb1,0xef,0x42,0x0f] # vqrdmlsh.s64 d0, d1, d2[0]
[0x82,0xff,0x42,0x0f] # vqrdmlsh.s8 q0, q1, d2[0]
[0xb2,0xff,0x42,0x0f] # vqrdmlsh.s64 q0, q1, d2[0]
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x81,0xef,0x42,0x0e] # vqrdmlah.s8 d0, d1, d2[0]
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0xb1,0xef,0x42,0x0e] # vqrdmlah.s64 d0, d1, d2[0]
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x82,0xff,0x42,0x0e] # vqrdmlah.s8 q0, q1, d2[0]
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0xb2,0xff,0x42,0x0e] # vqrdmlah.s64 q0, q1, d2[0]
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x81,0xef,0x42,0x0f] # vqrdmlsh.s8 d0, d1, d2[0]
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0xb1,0xef,0x42,0x0f] # vqrdmlsh.s64 d0, d1, d2[0]
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0x82,0xff,0x42,0x0f] # vqrdmlsh.s8 q0, q1, d2[0]
# CHECK-NEXT: ^
# CHECK: warning: invalid instruction encoding
# CHECK-NEXT: [0xb2,0xff,0x42,0x0f] # vqrdmlsh.s64 q0, q1, d2[0]
# CHECK-NEXT: ^