1 // RUN
: llvm-mc
-triple
=aarch64
-show-encoding
-mattr
=+sme2p1
< %s \
2 // RUN
: | FileCheck
%s
--check-prefixes
=CHECK-ENCODING
,CHECK-INST
3 // RUN
: not llvm-mc
-triple
=aarch64
-show-encoding
< %s
2>&1 \
4 // RUN
: | FileCheck
%s
--check-prefix
=CHECK-ERROR
5 // RUN
: llvm-mc
-triple
=aarch64
-filetype
=obj
-mattr
=+sme2p1
< %s \
6 // RUN
: | llvm-objdump
--no-print-imm-hex
-d
--mattr
=+sme2p1
- \
7 // RUN
: | FileCheck
%s
--check-prefix
=CHECK-INST
8 // RUN
: llvm-mc
-triple
=aarch64
-filetype
=obj
-mattr
=+sme2p1
< %s \
9 // RUN
: | llvm-objdump
--no-print-imm-hex
-d
--mattr
=-sme2p1
- \
10 // RUN
: | FileCheck
%s
--check-prefix
=CHECK-UNKNOWN
11 // RUN
: llvm-mc
-triple
=aarch64
-show-encoding
-mattr
=+sme2p1
< %s \
12 // RUN
: | sed
'/.text/d' | sed
's/.*encoding: //g' \
13 // RUN
: | llvm-mc
-triple
=aarch64
-mattr
=+sme2p1
-disassemble
-show-encoding \
14 // RUN
: | FileCheck
%s
--check-prefixes
=CHECK-ENCODING
,CHECK-INST
17 luti2
{z0.h
, z8.h
}, zt0
, z0
[0] // 11000000-10011100-01010000-00000000
18 // CHECK-INST
: luti2
{ z0.h
, z8.h
}, zt0
, z0
[0]
19 // CHECK-ENCODING
: [0x00,0x50,0x9c,0xc0]
20 // CHECK-ERROR
: instruction requires
: sme2p1
21 // CHECK-UNKNOWN
: c09c5000
<unknown
>
23 luti2
{z21.h
, z29.h
}, zt0
, z10
[2] // 11000000-10011101-01010001-01010101
24 // CHECK-INST
: luti2
{ z21.h
, z29.h
}, zt0
, z10
[2]
25 // CHECK-ENCODING
: [0x55,0x51,0x9d,0xc0]
26 // CHECK-ERROR
: instruction requires
: sme2p1
27 // CHECK-UNKNOWN
: c09d5155
<unknown
>
29 luti2
{z23.h
, z31.h
}, zt0
, z13
[1] // 11000000-10011100-11010001-10110111
30 // CHECK-INST
: luti2
{ z23.h
, z31.h
}, zt0
, z13
[1]
31 // CHECK-ENCODING
: [0xb7,0xd1,0x9c,0xc0]
32 // CHECK-ERROR
: instruction requires
: sme2p1
33 // CHECK-UNKNOWN
: c09cd1b7
<unknown
>
35 luti2
{z23.h
, z31.h
}, zt0
, z31
[7] // 11000000-10011111-11010011-11110111
36 // CHECK-INST
: luti2
{ z23.h
, z31.h
}, zt0
, z31
[7]
37 // CHECK-ENCODING
: [0xf7,0xd3,0x9f,0xc0]
38 // CHECK-ERROR
: instruction requires
: sme2p1
39 // CHECK-UNKNOWN
: c09fd3f7
<unknown
>
42 luti2
{z0.
b, z8.
b}, zt0
, z0
[0] // 11000000-10011100-01000000-00000000
43 // CHECK-INST
: luti2
{ z0.
b, z8.
b }, zt0
, z0
[0]
44 // CHECK-ENCODING
: [0x00,0x40,0x9c,0xc0]
45 // CHECK-ERROR
: instruction requires
: sme2p1
46 // CHECK-UNKNOWN
: c09c4000
<unknown
>
48 luti2
{z21.
b, z29.
b}, zt0
, z10
[2] // 11000000-10011101-01000001-01010101
49 // CHECK-INST
: luti2
{ z21.
b, z29.
b }, zt0
, z10
[2]
50 // CHECK-ENCODING
: [0x55,0x41,0x9d,0xc0]
51 // CHECK-ERROR
: instruction requires
: sme2p1
52 // CHECK-UNKNOWN
: c09d4155
<unknown
>
54 luti2
{z23.
b, z31.
b}, zt0
, z13
[1] // 11000000-10011100-11000001-10110111
55 // CHECK-INST
: luti2
{ z23.
b, z31.
b }, zt0
, z13
[1]
56 // CHECK-ENCODING
: [0xb7,0xc1,0x9c,0xc0]
57 // CHECK-ERROR
: instruction requires
: sme2p1
58 // CHECK-UNKNOWN
: c09cc1b7
<unknown
>
60 luti2
{z23.
b, z31.
b}, zt0
, z31
[7] // 11000000-10011111-11000011-11110111
61 // CHECK-INST
: luti2
{ z23.
b, z31.
b }, zt0
, z31
[7]
62 // CHECK-ENCODING
: [0xf7,0xc3,0x9f,0xc0]
63 // CHECK-ERROR
: instruction requires
: sme2p1
64 // CHECK-UNKNOWN
: c09fc3f7
<unknown
>
67 luti2
{z0.h
, z4.h
, z8.h
, z12.h
}, zt0
, z0
[0] // 11000000-10011100-10010000-00000000
68 // CHECK-INST
: luti2
{ z0.h
, z4.h
, z8.h
, z12.h
}, zt0
, z0
[0]
69 // CHECK-ENCODING
: [0x00,0x90,0x9c,0xc0]
70 // CHECK-ERROR
: instruction requires
: sme2p1
71 // CHECK-UNKNOWN
: c09c9000
<unknown
>
73 luti2
{z17.h
, z21.h
, z25.h
, z29.h
}, zt0
, z10
[1] // 11000000-10011101-10010001-01010001
74 // CHECK-INST
: luti2
{ z17.h
, z21.h
, z25.h
, z29.h
}, zt0
, z10
[1]
75 // CHECK-ENCODING
: [0x51,0x91,0x9d,0xc0]
76 // CHECK-ERROR
: instruction requires
: sme2p1
77 // CHECK-UNKNOWN
: c09d9151
<unknown
>
79 luti2
{z19.h
, z23.h
, z27.h
, z31.h
}, zt0
, z13
[0] // 11000000-10011100-10010001-10110011
80 // CHECK-INST
: luti2
{ z19.h
, z23.h
, z27.h
, z31.h
}, zt0
, z13
[0]
81 // CHECK-ENCODING
: [0xb3,0x91,0x9c,0xc0]
82 // CHECK-ERROR
: instruction requires
: sme2p1
83 // CHECK-UNKNOWN
: c09c91b3
<unknown
>
85 luti2
{z19.h
, z23.h
, z27.h
, z31.h
}, zt0
, z31
[3] // 11000000-10011111-10010011-11110011
86 // CHECK-INST
: luti2
{ z19.h
, z23.h
, z27.h
, z31.h
}, zt0
, z31
[3]
87 // CHECK-ENCODING
: [0xf3,0x93,0x9f,0xc0]
88 // CHECK-ERROR
: instruction requires
: sme2p1
89 // CHECK-UNKNOWN
: c09f93f3
<unknown
>
92 luti2
{z0.
b, z4.
b, z8.
b, z12.
b}, zt0
, z0
[0] // 11000000-10011100-10000000-00000000
93 // CHECK-INST
: luti2
{ z0.
b, z4.
b, z8.
b, z12.
b }, zt0
, z0
[0]
94 // CHECK-ENCODING
: [0x00,0x80,0x9c,0xc0]
95 // CHECK-ERROR
: instruction requires
: sme2p1
96 // CHECK-UNKNOWN
: c09c8000
<unknown
>
98 luti2
{z17.
b, z21.
b, z25.
b, z29.
b}, zt0
, z10
[1] // 11000000-10011101-10000001-01010001
99 // CHECK-INST
: luti2
{ z17.
b, z21.
b, z25.
b, z29.
b }, zt0
, z10
[1]
100 // CHECK-ENCODING
: [0x51,0x81,0x9d,0xc0]
101 // CHECK-ERROR
: instruction requires
: sme2p1
102 // CHECK-UNKNOWN
: c09d8151
<unknown
>
104 luti2
{z19.
b, z23.
b, z27.
b, z31.
b}, zt0
, z13
[0] // 11000000-10011100-10000001-10110011
105 // CHECK-INST
: luti2
{ z19.
b, z23.
b, z27.
b, z31.
b }, zt0
, z13
[0]
106 // CHECK-ENCODING
: [0xb3,0x81,0x9c,0xc0]
107 // CHECK-ERROR
: instruction requires
: sme2p1
108 // CHECK-UNKNOWN
: c09c81b3
<unknown
>
110 luti2
{z19.
b, z23.
b, z27.
b, z31.
b}, zt0
, z31
[3] // 11000000-10011111-10000011-11110011
111 // CHECK-INST
: luti2
{ z19.
b, z23.
b, z27.
b, z31.
b }, zt0
, z31
[3]
112 // CHECK-ENCODING
: [0xf3,0x83,0x9f,0xc0]
113 // CHECK-ERROR
: instruction requires
: sme2p1
114 // CHECK-UNKNOWN
: c09f83f3
<unknown
>