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