1// RUN: not llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+fp16fml,+neon < %s 2>&1 | FileCheck %s --check-prefix=CHECK 2 3//------------------------------------------------------------------------------ 4// ARMV8.2-A Floating Point Multiplication 5//------------------------------------------------------------------------------ 6 7fmlal V0.2s, v1.2h, v2.h[8] 8fmlsl V0.2s, v1.2h, v2.h[8] 9fmlal V0.4s, v1.4h, v2.h[8] 10fmlsl V0.4s, v1.4h, v2.h[8] 11 12fmlal2 V0.2s, v1.2h, v2.h[8] 13fmlsl2 V0.2s, v1.2h, v2.h[8] 14fmlal2 V0.4s, v1.4h, v2.h[8] 15fmlsl2 V0.4s, v1.4h, v2.h[8] 16 17fmlal V0.2s, v1.2h, v2.h[-1] 18fmlsl2 V0.2s, v1.2h, v2.h[-1] 19 20//CHECK: error: vector lane must be an integer in range [0, 7]. 21//CHECK-NEXT: fmlal V0.2s, v1.2h, v2.h[8] 22//CHECK-NEXT: ^ 23//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 24//CHECK-NEXT: fmlsl V0.2s, v1.2h, v2.h[8] 25//CHECK-NEXT: ^ 26//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 27//CHECK-NEXT: fmlal V0.4s, v1.4h, v2.h[8] 28//CHECK-NEXT: ^ 29//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 30//CHECK-NEXT: fmlsl V0.4s, v1.4h, v2.h[8] 31//CHECK-NEXT: ^ 32 33//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 34//CHECK-NEXT: fmlal2 V0.2s, v1.2h, v2.h[8] 35//CHECK-NEXT: ^ 36//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 37//CHECK-NEXT: fmlsl2 V0.2s, v1.2h, v2.h[8] 38//CHECK-NEXT: ^ 39//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 40//CHECK-NEXT: fmlal2 V0.4s, v1.4h, v2.h[8] 41//CHECK-NEXT: ^ 42//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 43//CHECK-NEXT: fmlsl2 V0.4s, v1.4h, v2.h[8] 44//CHECK-NEXT: ^ 45 46//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 47//CHECK-NEXT: fmlal V0.2s, v1.2h, v2.h[-1] 48//CHECK-NEXT: ^ 49//CHECK-NEXT: error: vector lane must be an integer in range [0, 7]. 50//CHECK-NEXT: fmlsl2 V0.2s, v1.2h, v2.h[-1] 51//CHECK-NEXT: ^ 52