1 // RUN
: not llvm-mc
-triple
=aarch64
-show-encoding
-mattr
=+sme2
2>&1 < %s | FileCheck
%s
3 // --------------------------------------------------------------------------//
6 umax
{z0.h
, z1.h
}, {z0.h-z2.h
}, z0.h
7 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
8 // CHECK-NEXT
: umax
{z0.h
, z1.h
}, {z0.h-z2.h
}, z0.h
9 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}:
11 umax
{z1.d-z2.d
}, {z0.d
, z1.d
}, z0.d
12 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: Invalid vector list
, expected list with
2 consecutive SVE vectors
, where the first vector is
a multiple of
2 and with matching element type
13 // CHECK-NEXT
: umax
{z1.d-z2.d
}, {z0.d
, z1.d
}, z0.d
14 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}:
16 // --------------------------------------------------------------------------//
17 // Invalid single register
19 umax
{z0.
b, z1.
b}, {z2.b-z3.
b}, z31.
b
20 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: Invalid restricted vector register
, expected z0.b.
.z15.b
21 // CHECK-NEXT
: umax
{z0.
b, z1.
b}, {z2.b-z3.
b}, z31.
b
22 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}:
24 // --------------------------------------------------------------------------//
25 // Invalid Register Suffix
27 umax
{z0.
b, z1.
b}, {z2.b-z3.
b}, z14.d
28 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: Invalid restricted vector register
, expected z0.b.
.z15.b
29 // CHECK-NEXT
: umax
{z0.
b, z1.
b}, {z2.b-z3.
b}, z14.d
30 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}: