1 @ RUN: llvm-mc < %s -triple thumbv7-unknown-unknown -show-encoding -mattr=+vfp4,-d16 2>&1 | FileCheck %s --check-prefix=D32 2 @ RUN: not llvm-mc < %s -triple thumbv7-unknown-unknown -show-encoding -mattr=+vfp4,+d16 2>&1 | FileCheck %s --check-prefix=D16 3 4 @ D32-NOT: error: 5 6 @ D16: error: invalid instruction, any one of the following would fix this: 7 @ D16-NEXT: vadd.f64 d1, d2, d16 8 @ D16: note: operand must be a register in range [d0, d15] 9 @ D16: note: too many operands for instruction 10 vadd.f64 d1, d2, d16 11 12 @ D16: error: operand must be a register in range [d0, d15] 13 @ D16-NEXT: vadd.f64 d1, d17, d6 14 vadd.f64 d1, d17, d6 15 16 @ D16: error: operand must be a register in range [d0, d15] 17 @ D16-NEXT: vadd.f64 d19, d7, d6 18 vadd.f64 d19, d7, d6 19 20 @ D16: error: operand must be a register in range [d0, d15] 21 @ D16-NEXT: vcvt.f64.f32 d22, s4 22 vcvt.f64.f32 d22, s4 23 24 @ D16: error: operand must be a register in range [d0, d15] 25 @ D16-NEXT: vcvt.f32.f64 s26, d30 26 vcvt.f32.f64 s26, d30 27