1 // RUN
: not llvm-mc
-triple
=aarch64
-show-encoding
-mattr
=+sme2p1
,+sme-f16f16
2>&1 < %s | FileCheck
%s
3 // --------------------------------------------------------------------------//
6 fcvtl
{z0.s-z2.s
}, z0.h
7 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
8 // CHECK-NEXT
: fcvtl
{z0.s-z2.s
}, z0.h
9 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}:
11 fcvtl z0.h
, {z1.s-z2.s
}
12 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: vector register expected
13 // CHECK-NEXT
: fcvtl z0.h
, {z1.s-z2.s
}
14 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}:
16 fcvtl
{z1.s-z2.s
}, z0.h
17 // 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 types
18 // CHECK-NEXT
: fcvtl
{z1.s-z2.s
}, z0.h
19 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}:
21 // --------------------------------------------------------------------------//
22 // Invalid Register Suffix
24 fcvtl
{z0.s-z1.s
}, z0.s
25 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: invalid element width
26 // CHECK-NEXT
: fcvtl
{z0.s-z1.s
}, z0.s
27 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}:
29 fcvtl
{z0.h-z1.h
}, z0.h
30 // CHECK
: [[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
31 // CHECK-NEXT
: fcvtl
{z0.h-z1.h
}, z0.h
32 // CHECK-
NOT: [[@LINE-
1]]:{{[0-9]+}}: