1 # RUN: llvm-mc -triple armv8a -mattr=+v8.3a,+neon,+fullfp16 -disassemble < %s 2>&1 | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-FP16
2 # RUN: not llvm-mc -triple armv8a -mattr=+v8.2a,+neon,+fullfp16 -disassemble < %s 2>&1 | FileCheck %s --check-prefix=MISSING --check-prefix=MISSING-FP16
3 # RUN: not llvm-mc -triple armv8a -mattr=+v8.3a,-neon,+fullfp16 -disassemble < %s 2>&1 | FileCheck %s --check-prefix=MISSING --check-prefix=MISSING-FP16
4 # RUN: not llvm-mc -triple armv8a -mattr=+v8.3a,+neon,-fullfp16 -disassemble < %s 2>%t | FileCheck %s --check-prefix=CHECK
5 # RUN: FileCheck %s < %t --check-prefix=MISSING-FP16
8 # CHECK-FP16: vcmla.f16 d0, d1, d2, #0
9 # MISSING-FP16: warning: invalid instruction encoding
11 # CHECK-FP16: vcmla.f16 q0, q1, q2, #0
12 # MISSING-FP16: warning: invalid instruction encoding
14 # CHECK: vcmla.f32 d0, d1, d2, #0
15 # MISSING: warning: invalid instruction encoding
17 # CHECK: vcmla.f32 q0, q1, q2, #0
18 # MISSING: warning: invalid instruction encoding
20 # CHECK: vcmla.f32 d0, d1, d2, #90
21 # MISSING: warning: invalid instruction encoding
23 # CHECK: vcmla.f32 d0, d1, d2, #180
24 # MISSING: warning: invalid instruction encoding
26 # CHECK: vcmla.f32 d0, d1, d2, #270
27 # MISSING: warning: invalid instruction encoding
29 # CHECK-FP16: vcadd.f16 d0, d1, d2, #90
30 # MISSING-FP16: warning: invalid instruction encoding
32 # CHECK-FP16: vcadd.f16 q0, q1, q2, #90
33 # MISSING-FP16: warning: invalid instruction encoding
35 # CHECK: vcadd.f32 d0, d1, d2, #90
36 # MISSING: warning: invalid instruction encoding
38 # CHECK: vcadd.f32 q0, q1, q2, #90
39 # MISSING: warning: invalid instruction encoding
41 # CHECK: vcadd.f32 d0, d1, d2, #270
42 # MISSING: warning: invalid instruction encoding
44 # CHECK-FP16: vcmla.f16 d0, d1, d2[0], #0
45 # MISSING-FP16: warning: invalid instruction encoding
47 # CHECK-FP16: vcmla.f16 q0, q1, d2[0], #0
48 # MISSING-FP16: warning: invalid instruction encoding
50 # CHECK: vcmla.f32 d0, d1, d2[0], #0
51 # MISSING: warning: invalid instruction encoding
53 # CHECK: vcmla.f32 q0, q1, d2[0], #0
54 # MISSING: warning: invalid instruction encoding
56 # CHECK: vcmla.f32 d0, d1, d2[0], #90
57 # MISSING: warning: invalid instruction encoding
59 # CHECK: vcmla.f32 d0, d1, d2[0], #180
60 # MISSING: warning: invalid instruction encoding
62 # CHECK: vcmla.f32 d0, d1, d2[0], #270
63 # MISSING: warning: invalid instruction encoding
65 # CHECK-FP16: vcmla.f16 d0, d1, d2[1], #0
66 # MISSING-FP16: warning: invalid instruction encoding