# RUN: llvm-mc -triple armv8a -mattr=+v8.3a,+neon,+fullfp16 -disassemble < %s 2>&1 | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-FP16 # RUN: not llvm-mc -triple armv8a -mattr=+v8.2a,+neon,+fullfp16 -disassemble < %s 2>&1 | FileCheck %s --check-prefix=MISSING --check-prefix=MISSING-FP16 # RUN: not llvm-mc -triple armv8a -mattr=+v8.3a,-neon,+fullfp16 -disassemble < %s 2>&1 | FileCheck %s --check-prefix=MISSING --check-prefix=MISSING-FP16 # RUN: not llvm-mc -triple armv8a -mattr=+v8.3a,+neon,-fullfp16 -disassemble < %s 2>%t | FileCheck %s --check-prefix=CHECK # RUN: FileCheck %s < %t --check-prefix=MISSING-FP16 [0x02,0x08,0x21,0xfc] # CHECK-FP16: vcmla.f16 d0, d1, d2, #0 # MISSING-FP16: warning: invalid instruction encoding [0x44,0x08,0x22,0xfc] # CHECK-FP16: vcmla.f16 q0, q1, q2, #0 # MISSING-FP16: warning: invalid instruction encoding [0x02,0x08,0x31,0xfc] # CHECK: vcmla.f32 d0, d1, d2, #0 # MISSING: warning: invalid instruction encoding [0x44,0x08,0x32,0xfc] # CHECK: vcmla.f32 q0, q1, q2, #0 # MISSING: warning: invalid instruction encoding [0x02,0x08,0xb1,0xfc] # CHECK: vcmla.f32 d0, d1, d2, #90 # MISSING: warning: invalid instruction encoding [0x02,0x08,0x31,0xfd] # CHECK: vcmla.f32 d0, d1, d2, #180 # MISSING: warning: invalid instruction encoding [0x02,0x08,0xb1,0xfd] # CHECK: vcmla.f32 d0, d1, d2, #270 # MISSING: warning: invalid instruction encoding [0x02,0x08,0x81,0xfc] # CHECK-FP16: vcadd.f16 d0, d1, d2, #90 # MISSING-FP16: warning: invalid instruction encoding [0x44,0x08,0x82,0xfc] # CHECK-FP16: vcadd.f16 q0, q1, q2, #90 # MISSING-FP16: warning: invalid instruction encoding [0x02,0x08,0x91,0xfc] # CHECK: vcadd.f32 d0, d1, d2, #90 # MISSING: warning: invalid instruction encoding [0x44,0x08,0x92,0xfc] # CHECK: vcadd.f32 q0, q1, q2, #90 # MISSING: warning: invalid instruction encoding [0x02,0x08,0x91,0xfd] # CHECK: vcadd.f32 d0, d1, d2, #270 # MISSING: warning: invalid instruction encoding [0x02,0x08,0x01,0xfe] # CHECK-FP16: vcmla.f16 d0, d1, d2[0], #0 # MISSING-FP16: warning: invalid instruction encoding [0x42,0x08,0x02,0xfe] # CHECK-FP16: vcmla.f16 q0, q1, d2[0], #0 # MISSING-FP16: warning: invalid instruction encoding [0x02,0x08,0x81,0xfe] # CHECK: vcmla.f32 d0, d1, d2[0], #0 # MISSING: warning: invalid instruction encoding [0x42,0x08,0x82,0xfe] # CHECK: vcmla.f32 q0, q1, d2[0], #0 # MISSING: warning: invalid instruction encoding [0x02,0x08,0x91,0xfe] # CHECK: vcmla.f32 d0, d1, d2[0], #90 # MISSING: warning: invalid instruction encoding [0x02,0x08,0xa1,0xfe] # CHECK: vcmla.f32 d0, d1, d2[0], #180 # MISSING: warning: invalid instruction encoding [0x02,0x08,0xb1,0xfe] # CHECK: vcmla.f32 d0, d1, d2[0], #270 # MISSING: warning: invalid instruction encoding [0x22,0x08,0x01,0xfe] # CHECK-FP16: vcmla.f16 d0, d1, d2[1], #0 # MISSING-FP16: warning: invalid instruction encoding