blob: 648992e9a7b9021f2e917f15548d070244df786c [file] [log] [blame]
Oliver Stannardc8d452e2014-11-05 12:40:21 +00001@ 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
Oliver Stannard9e89d8c2014-11-05 12:06:39 +00003
4@ D32-NOT: error:
5
Oliver Stannardcd3306f2017-10-10 12:35:09 +00006@ D16: error: invalid instruction, any one of the following would fix this:
Oliver Stannard9e89d8c2014-11-05 12:06:39 +00007@ D16-NEXT: vadd.f64 d1, d2, d16
Oliver Stannardcd3306f2017-10-10 12:35:09 +00008@ D16: note: operand must be a register in range [d0, d15]
9@ D16: note: too many operands for instruction
Oliver Stannard9e89d8c2014-11-05 12:06:39 +000010vadd.f64 d1, d2, d16
11
Oliver Stannardcd3306f2017-10-10 12:35:09 +000012@ D16: error: operand must be a register in range [d0, d15]
Oliver Stannard9e89d8c2014-11-05 12:06:39 +000013@ D16-NEXT: vadd.f64 d1, d17, d6
14vadd.f64 d1, d17, d6
15
Oliver Stannardcd3306f2017-10-10 12:35:09 +000016@ D16: error: operand must be a register in range [d0, d15]
Oliver Stannard9e89d8c2014-11-05 12:06:39 +000017@ D16-NEXT: vadd.f64 d19, d7, d6
18vadd.f64 d19, d7, d6
19
Oliver Stannardcd3306f2017-10-10 12:35:09 +000020@ D16: error: operand must be a register in range [d0, d15]
Oliver Stannard9e89d8c2014-11-05 12:06:39 +000021@ D16-NEXT: vcvt.f64.f32 d22, s4
22vcvt.f64.f32 d22, s4
23
Oliver Stannardcd3306f2017-10-10 12:35:09 +000024@ D16: error: operand must be a register in range [d0, d15]
Oliver Stannard9e89d8c2014-11-05 12:06:39 +000025@ D16-NEXT: vcvt.f32.f64 s26, d30
26vcvt.f32.f64 s26, d30