1 // RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve 2>&1 < %s| FileCheck %s 2 3 // ------------------------------------------------------------------------- // 4 // Invalid immediates (must be 0.0 or 1.0) 5 6 fmin z0.h, p0/m, z0.h, #0.5 7 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid floating point constant, expected 0.0 or 1.0. 8 // CHECK-NEXT: fmin z0.h, p0/m, z0.h, #0.5 9 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 10 11 fmin z0.h, p0/m, z0.h, #-0.0 12 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid floating point constant, expected 0.0 or 1.0. 13 // CHECK-NEXT: fmin z0.h, p0/m, z0.h, #-0.0 14 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 15 16 fmin z0.h, p0/m, z0.h, #0.0000000000000000000000001 17 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid floating point constant, expected 0.0 or 1.0. 18 // CHECK-NEXT: fmin z0.h, p0/m, z0.h, #0.0000000000000000000000001 19 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 20 21 fmin z0.h, p0/m, z0.h, #1.0000000000000000000000001 22 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid floating point constant, expected 0.0 or 1.0. 23 // CHECK-NEXT: fmin z0.h, p0/m, z0.h, #1.0000000000000000000000001 24 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 25 26 fmin z0.h, p0/m, z0.h, #0.9999999999999999999999999 27 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid floating point constant, expected 0.0 or 1.0. 28 // CHECK-NEXT: fmin z0.h, p0/m, z0.h, #0.9999999999999999999999999 29 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 30 31 32 // ------------------------------------------------------------------------- // 33 // Tied operands must match 34 35 fmin z0.h, p7/m, z1.h, z31.h 36 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: operand must match destination register 37 // CHECK-NEXT: fmin z0.h, p7/m, z1.h, z31.h 38 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 39 40 41 // ------------------------------------------------------------------------- // 42 // Invalid element widths. 43 44 fmin z0.b, p7/m, z0.b, z31.b 45 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width 46 // CHECK-NEXT: fmin z0.b, p7/m, z0.b, z31.b 47 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 48 49 fmin z0.h, p7/m, z0.h, z31.s 50 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width 51 // CHECK-NEXT: fmin z0.h, p7/m, z0.h, z31.s 52 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 53 54 55 // ------------------------------------------------------------------------- // 56 // Invalid predicate 57 58 fmin z0.h, p8/m, z0.h, z31.h 59 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: restricted predicate has range [0, 7]. 60 // CHECK-NEXT: fmin z0.h, p8/m, z0.h, z31.h 61 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 62