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