1 // RUN
: llvm-mc
-triple arm
-mattr
=+bf16
,+neon
-show-encoding
< %s | FileCheck
%s
--check-prefix
=CHECK
2 // RUN
: llvm-mc
-triple arm
-mattr
=+v8.6
a -show-encoding
< %s | FileCheck
%s
--check-prefix
=CHECK
5 // CHECK
: vdot.bf16 d3
, d4
, d5 @ encoding
: [0x05,0x3d,0x04,0xfc]
7 // CHECK-NEXT
: vdot.bf16 q0
, q1
, q2 @ encoding
: [0x44,0x0d,0x02,0xfc]
8 vdot.bf16 d3
, d4
, d5
[1]
9 // CHECK-NEXT
: vdot.bf16 d3
, d4
, d5
[1] @ encoding
: [0x25,0x3d,0x04,0xfe]
10 vdot.bf16 q0
, q1
, d5
[1]
11 // CHECK-NEXT
: vdot.bf16 q0
, q1
, d5
[1] @ encoding
: [0x65,0x0d,0x02,0xfe]
13 // CHECK-NEXT
: vmmla.bf16 q0
, q1
, q2 @ encoding
: [0x44,0x0c,0x02,0xfc]
15 // CHECK-NEXT
: vcvt.bf16.f32 d1
, q3 @ encoding
: [0x46,0x16,0xb6,0xf3]
16 vcvtbeq.bf16.f32 s1
, s3
17 // CHECK-NEXT
: vcvtbeq.bf16.f32 s1
, s3 @ encoding
: [0x61,0x09,0xf3,0x0e]
18 vcvttne.bf16.f32 s1
, s3
19 // CHECK-NEXT
: vcvttne.bf16.f32 s1
, s3 @ encoding
: [0xe1,0x09,0xf3,0x1e]
21 //CHECK-NEXT
: vfmat.bf16 q0
, q0
, q0 @ encoding
: [0x50,0x08,0x30,0xfc]
22 vfmat.bf16 q0
, q0
, q15
23 //CHECK-NEXT
: vfmat.bf16 q0
, q0
, q15 @ encoding
: [0x7e,0x08,0x30,0xfc]
24 vfmat.bf16 q0
, q15
, q0
25 //CHECK-NEXT
: vfmat.bf16 q0
, q15
, q0 @ encoding
: [0xd0,0x08,0x3e,0xfc]
26 vfmat.bf16 q0
, q15
, q15
27 //CHECK-NEXT
: vfmat.bf16 q0
, q15
, q15 @ encoding
: [0xfe,0x08,0x3e,0xfc]
29 //CHECK-NEXT
: vfmat.bf16 q7
, q0
, q0 @ encoding
: [0x50,0xe8,0x30,0xfc]
31 //CHECK-NEXT
: vfmat.bf16 q8
, q0
, q0 @ encoding
: [0x50,0x08,0x70,0xfc]
33 //CHECK-NEXT
: vfmab.bf16 q0
, q0
, q0 @ encoding
: [0x10,0x08,0x30,0xfc]
34 vfmab.bf16 q0
, q0
, q15
35 //CHECK-NEXT
: vfmab.bf16 q0
, q0
, q15 @ encoding
: [0x3e,0x08,0x30,0xfc]
36 vfmab.bf16 q0
, q15
, q0
37 //CHECK-NEXT
: vfmab.bf16 q0
, q15
, q0 @ encoding
: [0x90,0x08,0x3e,0xfc]
38 vfmab.bf16 q0
, q15
, q15
39 //CHECK-NEXT
: vfmab.bf16 q0
, q15
, q15 @ encoding
: [0xbe,0x08,0x3e,0xfc]
41 //CHECK-NEXT
: vfmab.bf16 q7
, q0
, q0 @ encoding
: [0x10,0xe8,0x30,0xfc]
43 //CHECK-NEXT
: vfmab.bf16 q8
, q0
, q0 @ encoding
: [0x10,0x08,0x70,0xfc]
44 vfmat.bf16 q0
, q0
, d0
[0]
45 //CHECK-NEXT
: vfmat.bf16 q0
, q0
, d0
[0] @ encoding
: [0x50,0x08,0x30,0xfe]
46 vfmat.bf16 q0
, q0
, d0
[3]
47 //CHECK-NEXT
: vfmat.bf16 q0
, q0
, d0
[3] @ encoding
: [0x78,0x08,0x30,0xfe]
48 vfmat.bf16 q0
, q0
, d7
[0]
49 //CHECK-NEXT
: vfmat.bf16 q0
, q0
, d7
[0] @ encoding
: [0x57,0x08,0x30,0xfe]
50 vfmab.bf16 q0
, q0
, d0
[0]
51 //CHECK-NEXT
: vfmab.bf16 q0
, q0
, d0
[0] @ encoding
: [0x10,0x08,0x30,0xfe]
52 vfmab.bf16 q0
, q0
, d0
[3]
53 //CHECK-NEXT
: vfmab.bf16 q0
, q0
, d0
[3] @ encoding
: [0x38,0x08,0x30,0xfe]
54 vfmab.bf16 q0
, q0
, d7
[0]
55 //CHECK-NEXT
: vfmab.bf16 q0
, q0
, d7
[0] @ encoding
: [0x17,0x08,0x30,0xfe]