1 // RUN
: llvm-mc
-triple
=aarch64
-show-encoding
-mattr
=+sme-f64f64
< %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
=+sme-f64f64
< %s \
6 // RUN
: | llvm-objdump
-d
--mattr
=+sme-f64f64
- | FileCheck
%s
--check-prefix
=CHECK-INST
7 // RUN
: llvm-mc
-triple
=aarch64
-filetype
=obj
-mattr
=+sme-f64f64
< %s \
8 // RUN
: | llvm-objdump
-d
--mattr
=-sme
- | FileCheck
%s
--check-prefix
=CHECK-UNKNOWN
9 // Disassemble encoding
and check the re-encoding
(-show-encoding
) matches.
10 // RUN
: llvm-mc
-triple
=aarch64
-show-encoding
-mattr
=+sme-f64f64
< %s \
11 // RUN
: | sed
'/.text/d' | sed
's/.*encoding: //g' \
12 // RUN
: | llvm-mc
-triple
=aarch64
-mattr
=+sme-f64f64
-disassemble
-show-encoding \
13 // RUN
: | FileCheck
%s
--check-prefixes
=CHECK-ENCODING
,CHECK-INST
15 // --------------------------------------------------------------------------//
16 // Non-widening
(double-precision
)
18 fmopa za0.d
, p0
/m
, p0
/m
, z0.d
, z0.d
19 // CHECK-INST
: fmopa za0.d
, p0
/m
, p0
/m
, z0.d
, z0.d
20 // CHECK-ENCODING
: [0x00,0x00,0xc0,0x80]
21 // CHECK-ERROR
: instruction requires
: sme-f64f64
22 // CHECK-UNKNOWN
: 80c00000
<unknown
>
24 fmopa za5.d
, p5
/m
, p2
/m
, z10.d
, z21.d
25 // CHECK-INST
: fmopa za5.d
, p5
/m
, p2
/m
, z10.d
, z21.d
26 // CHECK-ENCODING
: [0x45,0x55,0xd5,0x80]
27 // CHECK-ERROR
: instruction requires
: sme-f64f64
28 // CHECK-UNKNOWN
: 80d55545
<unknown
>
30 fmopa za7.d
, p3
/m
, p7
/m
, z13.d
, z8.d
31 // CHECK-INST
: fmopa za7.d
, p3
/m
, p7
/m
, z13.d
, z8.d
32 // CHECK-ENCODING
: [0xa7,0xed,0xc8,0x80]
33 // CHECK-ERROR
: instruction requires
: sme-f64f64
34 // CHECK-UNKNOWN
: 80c8eda7
<unknown
>
36 fmopa za7.d
, p7
/m
, p7
/m
, z31.d
, z31.d
37 // CHECK-INST
: fmopa za7.d
, p7
/m
, p7
/m
, z31.d
, z31.d
38 // CHECK-ENCODING
: [0xe7,0xff,0xdf,0x80]
39 // CHECK-ERROR
: instruction requires
: sme-f64f64
40 // CHECK-UNKNOWN
: 80dfffe7
<unknown
>
42 fmopa za5.d
, p3
/m
, p0
/m
, z17.d
, z16.d
43 // CHECK-INST
: fmopa za5.d
, p3
/m
, p0
/m
, z17.d
, z16.d
44 // CHECK-ENCODING
: [0x25,0x0e,0xd0,0x80]
45 // CHECK-ERROR
: instruction requires
: sme-f64f64
46 // CHECK-UNKNOWN
: 80d00e25
<unknown
>
48 fmopa za1.d
, p1
/m
, p4
/m
, z1.d
, z30.d
49 // CHECK-INST
: fmopa za1.d
, p1
/m
, p4
/m
, z1.d
, z30.d
50 // CHECK-ENCODING
: [0x21,0x84,0xde,0x80]
51 // CHECK-ERROR
: instruction requires
: sme-f64f64
52 // CHECK-UNKNOWN
: 80de8421
<unknown
>
54 fmopa za0.d
, p5
/m
, p2
/m
, z19.d
, z20.d
55 // CHECK-INST
: fmopa za0.d
, p5
/m
, p2
/m
, z19.d
, z20.d
56 // CHECK-ENCODING
: [0x60,0x56,0xd4,0x80]
57 // CHECK-ERROR
: instruction requires
: sme-f64f64
58 // CHECK-UNKNOWN
: 80d45660
<unknown
>
60 fmopa za0.d
, p6
/m
, p0
/m
, z12.d
, z2.d
61 // CHECK-INST
: fmopa za0.d
, p6
/m
, p0
/m
, z12.d
, z2.d
62 // CHECK-ENCODING
: [0x80,0x19,0xc2,0x80]
63 // CHECK-ERROR
: instruction requires
: sme-f64f64
64 // CHECK-UNKNOWN
: 80c21980
<unknown
>
66 fmopa za1.d
, p2
/m
, p6
/m
, z1.d
, z26.d
67 // CHECK-INST
: fmopa za1.d
, p2
/m
, p6
/m
, z1.d
, z26.d
68 // CHECK-ENCODING
: [0x21,0xc8,0xda,0x80]
69 // CHECK-ERROR
: instruction requires
: sme-f64f64
70 // CHECK-UNKNOWN
: 80dac821
<unknown
>
72 fmopa za5.d
, p2
/m
, p0
/m
, z22.d
, z30.d
73 // CHECK-INST
: fmopa za5.d
, p2
/m
, p0
/m
, z22.d
, z30.d
74 // CHECK-ENCODING
: [0xc5,0x0a,0xde,0x80]
75 // CHECK-ERROR
: instruction requires
: sme-f64f64
76 // CHECK-UNKNOWN
: 80de0ac5
<unknown
>
78 fmopa za2.d
, p5
/m
, p7
/m
, z9.d
, z1.d
79 // CHECK-INST
: fmopa za2.d
, p5
/m
, p7
/m
, z9.d
, z1.d
80 // CHECK-ENCODING
: [0x22,0xf5,0xc1,0x80]
81 // CHECK-ERROR
: instruction requires
: sme-f64f64
82 // CHECK-UNKNOWN
: 80c1f522
<unknown
>
84 fmopa za7.d
, p2
/m
, p5
/m
, z12.d
, z11.d
85 // CHECK-INST
: fmopa za7.d
, p2
/m
, p5
/m
, z12.d
, z11.d
86 // CHECK-ENCODING
: [0x87,0xa9,0xcb,0x80]
87 // CHECK-ERROR
: instruction requires
: sme-f64f64
88 // CHECK-UNKNOWN
: 80cba987
<unknown
>