1 // RUN
: llvm-mc
-triple
=aarch64
-show-encoding
-mattr
=+sve
< %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
=+sve
< %s \
6 // RUN
: | llvm-objdump
-d
-mattr
=+sve
- | FileCheck
%s
--check-prefix
=CHECK-INST
7 // RUN
: llvm-mc
-triple
=aarch64
-filetype
=obj
-mattr
=+sve
< %s \
8 // RUN
: | llvm-objdump
-d
- | FileCheck
%s
--check-prefix
=CHECK-UNKNOWN
11 cmpeq p0.
b, p0
/z
, z0.
b, z0.
b
12 // CHECK-INST
: cmpeq p0.
b, p0
/z
, z0.
b, z0.
b
13 // CHECK-ENCODING
: [0x00,0xa0,0x00,0x24]
14 // CHECK-ERROR
: instruction requires
: sve
15 // CHECK-UNKNOWN
: 00 a0
00 24 <unknown
>
17 cmpeq p0.h
, p0
/z
, z0.h
, z0.h
18 // CHECK-INST
: cmpeq p0.h
, p0
/z
, z0.h
, z0.h
19 // CHECK-ENCODING
: [0x00,0xa0,0x40,0x24]
20 // CHECK-ERROR
: instruction requires
: sve
21 // CHECK-UNKNOWN
: 00 a0
40 24 <unknown
>
23 cmpeq p0.s
, p0
/z
, z0.s
, z0.s
24 // CHECK-INST
: cmpeq p0.s
, p0
/z
, z0.s
, z0.s
25 // CHECK-ENCODING
: [0x00,0xa0,0x80,0x24]
26 // CHECK-ERROR
: instruction requires
: sve
27 // CHECK-UNKNOWN
: 00 a0
80 24 <unknown
>
29 cmpeq p0.d
, p0
/z
, z0.d
, z0.d
30 // CHECK-INST
: cmpeq p0.d
, p0
/z
, z0.d
, z0.d
31 // CHECK-ENCODING
: [0x00,0xa0,0xc0,0x24]
32 // CHECK-ERROR
: instruction requires
: sve
33 // CHECK-UNKNOWN
: 00 a0 c0
24 <unknown
>
35 cmpeq p0.
b, p0
/z
, z0.
b, z0.d
36 // CHECK-INST
: cmpeq p0.
b, p0
/z
, z0.
b, z0.d
37 // CHECK-ENCODING
: [0x00,0x20,0x00,0x24]
38 // CHECK-ERROR
: instruction requires
: sve
39 // CHECK-UNKNOWN
: 00 20 00 24 <unknown
>
41 cmpeq p0.h
, p0
/z
, z0.h
, z0.d
42 // CHECK-INST
: cmpeq p0.h
, p0
/z
, z0.h
, z0.d
43 // CHECK-ENCODING
: [0x00,0x20,0x40,0x24]
44 // CHECK-ERROR
: instruction requires
: sve
45 // CHECK-UNKNOWN
: 00 20 40 24 <unknown
>
47 cmpeq p0.s
, p0
/z
, z0.s
, z0.d
48 // CHECK-INST
: cmpeq p0.s
, p0
/z
, z0.s
, z0.d
49 // CHECK-ENCODING
: [0x00,0x20,0x80,0x24]
50 // CHECK-ERROR
: instruction requires
: sve
51 // CHECK-UNKNOWN
: 00 20 80 24 <unknown
>
53 cmpeq p0.
b, p0
/z
, z0.
b, #-16
54 // CHECK-INST
: cmpeq p0.
b, p0
/z
, z0.
b, #-16
55 // CHECK-ENCODING
: [0x00,0x80,0x10,0x25]
56 // CHECK-ERROR
: instruction requires
: sve
57 // CHECK-UNKNOWN
: 00 80 10 25 <unknown
>
59 cmpeq p0.h
, p0
/z
, z0.h
, #-16
60 // CHECK-INST
: cmpeq p0.h
, p0
/z
, z0.h
, #-16
61 // CHECK-ENCODING
: [0x00,0x80,0x50,0x25]
62 // CHECK-ERROR
: instruction requires
: sve
63 // CHECK-UNKNOWN
: 00 80 50 25 <unknown
>
65 cmpeq p0.s
, p0
/z
, z0.s
, #-16
66 // CHECK-INST
: cmpeq p0.s
, p0
/z
, z0.s
, #-16
67 // CHECK-ENCODING
: [0x00,0x80,0x90,0x25]
68 // CHECK-ERROR
: instruction requires
: sve
69 // CHECK-UNKNOWN
: 00 80 90 25 <unknown
>
71 cmpeq p0.d
, p0
/z
, z0.d
, #-16
72 // CHECK-INST
: cmpeq p0.d
, p0
/z
, z0.d
, #-16
73 // CHECK-ENCODING
: [0x00,0x80,0xd0,0x25]
74 // CHECK-ERROR
: instruction requires
: sve
75 // CHECK-UNKNOWN
: 00 80 d0
25 <unknown
>
77 cmpeq p0.
b, p0
/z
, z0.
b, #15
78 // CHECK-INST
: cmpeq p0.
b, p0
/z
, z0.
b, #15
79 // CHECK-ENCODING
: [0x00,0x80,0x0f,0x25]
80 // CHECK-ERROR
: instruction requires
: sve
81 // CHECK-UNKNOWN
: 00 80 0f
25 <unknown
>
83 cmpeq p0.h
, p0
/z
, z0.h
, #15
84 // CHECK-INST
: cmpeq p0.h
, p0
/z
, z0.h
, #15
85 // CHECK-ENCODING
: [0x00,0x80,0x4f,0x25]
86 // CHECK-ERROR
: instruction requires
: sve
87 // CHECK-UNKNOWN
: 00 80 4f
25 <unknown
>
89 cmpeq p0.s
, p0
/z
, z0.s
, #15
90 // CHECK-INST
: cmpeq p0.s
, p0
/z
, z0.s
, #15
91 // CHECK-ENCODING
: [0x00,0x80,0x8f,0x25]
92 // CHECK-ERROR
: instruction requires
: sve
93 // CHECK-UNKNOWN
: 00 80 8f
25 <unknown
>
95 cmpeq p0.d
, p0
/z
, z0.d
, #15
96 // CHECK-INST
: cmpeq p0.d
, p0
/z
, z0.d
, #15
97 // CHECK-ENCODING
: [0x00,0x80,0xcf,0x25]
98 // CHECK-ERROR
: instruction requires
: sve
99 // CHECK-UNKNOWN
: 00 80 cf
25 <unknown
>