1// RUN: llvm-mc -triple i686-unknown-unknown --show-encoding < %s | FileCheck %s
2
3// CHECK: vcvtne2ps2bf16 %xmm4, %xmm5, %xmm6 {%k7}
4// CHECK: encoding: [0x62,0xf2,0x57,0x0f,0x72,0xf4]
5          vcvtne2ps2bf16 %xmm4, %xmm5, %xmm6 {%k7}
6
7// CHECK: vcvtne2ps2bf16 %xmm4, %xmm5, %xmm6 {%k7} {z}
8// CHECK: encoding: [0x62,0xf2,0x57,0x8f,0x72,0xf4]
9          vcvtne2ps2bf16 %xmm4, %xmm5, %xmm6 {%k7} {z}
10
11// CHECK: vcvtne2ps2bf16   (%ecx), %xmm5, %xmm6 {%k7}
12// CHECK: encoding: [0x62,0xf2,0x57,0x0f,0x72,0x31]
13          vcvtne2ps2bf16   (%ecx), %xmm5, %xmm6 {%k7}
14
15// CHECK: vcvtne2ps2bf16   291(%esp,%esi,8), %xmm5, %xmm6 {%k7}
16// CHECK: encoding: [0x62,0xf2,0x57,0x0f,0x72,0xb4,0xf4,0x23,0x01,0x00,0x00]
17          vcvtne2ps2bf16   291(%esp,%esi,8), %xmm5, %xmm6 {%k7}
18
19// CHECK: vcvtne2ps2bf16   268435456(%esp,%esi,8), %xmm5, %xmm6 {%k7}
20// CHECK: encoding: [0x62,0xf2,0x57,0x0f,0x72,0xb4,0xf4,0x00,0x00,0x00,0x10]
21          vcvtne2ps2bf16   268435456(%esp,%esi,8), %xmm5, %xmm6 {%k7}
22
23// CHECK: vcvtne2ps2bf16   -16(%esp), %xmm5, %xmm6 {%k7}
24// CHECK: encoding: [0x62,0xf2,0x57,0x0f,0x72,0x74,0x24,0xff]
25          vcvtne2ps2bf16   -16(%esp), %xmm5, %xmm6 {%k7}
26
27// CHECK: vcvtne2ps2bf16   (%eax){1to4}, %xmm5, %xmm6 {%k7}
28// CHECK: encoding: [0x62,0xf2,0x57,0x1f,0x72,0x30]
29          vcvtne2ps2bf16   (%eax){1to4}, %xmm5, %xmm6 {%k7}
30
31// CHECK: vcvtne2ps2bf16   2032(%edx), %xmm5, %xmm6 {%k7}
32// CHECK: encoding: [0x62,0xf2,0x57,0x0f,0x72,0x72,0x7f]
33          vcvtne2ps2bf16   2032(%edx), %xmm5, %xmm6 {%k7}
34
35// CHECK: vcvtne2ps2bf16   -2048(%edx), %xmm5, %xmm6 {%k7}
36// CHECK: encoding: [0x62,0xf2,0x57,0x0f,0x72,0x72,0x80]
37          vcvtne2ps2bf16   -2048(%edx), %xmm5, %xmm6 {%k7}
38
39// CHECK: vcvtne2ps2bf16   508(%edx){1to4}, %xmm5, %xmm6 {%k7}
40// CHECK: encoding: [0x62,0xf2,0x57,0x1f,0x72,0x72,0x7f]
41          vcvtne2ps2bf16   508(%edx){1to4}, %xmm5, %xmm6 {%k7}
42
43// CHECK: vcvtne2ps2bf16   -512(%edx){1to4}, %xmm5, %xmm6 {%k7}
44// CHECK: encoding: [0x62,0xf2,0x57,0x1f,0x72,0x72,0x80]
45          vcvtne2ps2bf16   -512(%edx){1to4}, %xmm5, %xmm6 {%k7}
46
47// CHECK: vcvtne2ps2bf16 %ymm4, %ymm5, %ymm6 {%k7}
48// CHECK: encoding: [0x62,0xf2,0x57,0x2f,0x72,0xf4]
49          vcvtne2ps2bf16 %ymm4, %ymm5, %ymm6 {%k7}
50
51// CHECK: vcvtne2ps2bf16 %ymm4, %ymm5, %ymm6 {%k7} {z}
52// CHECK: encoding: [0x62,0xf2,0x57,0xaf,0x72,0xf4]
53          vcvtne2ps2bf16 %ymm4, %ymm5, %ymm6 {%k7} {z}
54
55// CHECK: vcvtne2ps2bf16   (%ecx), %ymm5, %ymm6 {%k7}
56// CHECK: encoding: [0x62,0xf2,0x57,0x2f,0x72,0x31]
57          vcvtne2ps2bf16   (%ecx), %ymm5, %ymm6 {%k7}
58
59// CHECK: vcvtne2ps2bf16   291(%esp,%esi,8), %ymm5, %ymm6 {%k7}
60// CHECK: encoding: [0x62,0xf2,0x57,0x2f,0x72,0xb4,0xf4,0x23,0x01,0x00,0x00]
61          vcvtne2ps2bf16   291(%esp,%esi,8), %ymm5, %ymm6 {%k7}
62
63// CHECK: vcvtne2ps2bf16   268435456(%esp,%esi,8), %ymm5, %ymm6 {%k7}
64// CHECK: encoding: [0x62,0xf2,0x57,0x2f,0x72,0xb4,0xf4,0x00,0x00,0x00,0x10]
65          vcvtne2ps2bf16   268435456(%esp,%esi,8), %ymm5, %ymm6 {%k7}
66
67// CHECK: vcvtne2ps2bf16   -32(%esp), %ymm5, %ymm6 {%k7}
68// CHECK: encoding: [0x62,0xf2,0x57,0x2f,0x72,0x74,0x24,0xff]
69          vcvtne2ps2bf16   -32(%esp), %ymm5, %ymm6 {%k7}
70
71// CHECK: vcvtne2ps2bf16   (%eax){1to8}, %ymm5, %ymm6 {%k7}
72// CHECK: encoding: [0x62,0xf2,0x57,0x3f,0x72,0x30]
73          vcvtne2ps2bf16   (%eax){1to8}, %ymm5, %ymm6 {%k7}
74
75// CHECK: vcvtne2ps2bf16   4064(%edx), %ymm5, %ymm6 {%k7}
76// CHECK: encoding: [0x62,0xf2,0x57,0x2f,0x72,0x72,0x7f]
77          vcvtne2ps2bf16   4064(%edx), %ymm5, %ymm6 {%k7}
78
79// CHECK: vcvtne2ps2bf16   -4096(%edx), %ymm5, %ymm6 {%k7}
80// CHECK: encoding: [0x62,0xf2,0x57,0x2f,0x72,0x72,0x80]
81          vcvtne2ps2bf16   -4096(%edx), %ymm5, %ymm6 {%k7}
82
83// CHECK: vcvtne2ps2bf16   508(%edx){1to8}, %ymm5, %ymm6 {%k7}
84// CHECK: encoding: [0x62,0xf2,0x57,0x3f,0x72,0x72,0x7f]
85          vcvtne2ps2bf16   508(%edx){1to8}, %ymm5, %ymm6 {%k7}
86
87// CHECK: vcvtne2ps2bf16   -512(%edx){1to8}, %ymm5, %ymm6 {%k7}
88// CHECK: encoding: [0x62,0xf2,0x57,0x3f,0x72,0x72,0x80]
89          vcvtne2ps2bf16   -512(%edx){1to8}, %ymm5, %ymm6 {%k7}
90
91// CHECK: vcvtneps2bf16 %xmm5, %xmm6
92// CHECK: encoding: [0x62,0xf2,0x7e,0x08,0x72,0xf5]
93          vcvtneps2bf16 %xmm5, %xmm6
94
95// CHECK: vcvtneps2bf16x  268435456(%esp,%esi,8), %xmm6 {%k7}
96// CHECK: encoding: [0x62,0xf2,0x7e,0x0f,0x72,0xb4,0xf4,0x00,0x00,0x00,0x10]
97          vcvtneps2bf16x  268435456(%esp,%esi,8), %xmm6 {%k7}
98
99// CHECK: vcvtneps2bf16   (%ecx){1to4}, %xmm6
100// CHECK: encoding: [0x62,0xf2,0x7e,0x18,0x72,0x31]
101          vcvtneps2bf16   (%ecx){1to4}, %xmm6
102
103// CHECK: vcvtneps2bf16x  2032(%ecx), %xmm6
104// CHECK: encoding: [0x62,0xf2,0x7e,0x08,0x72,0x71,0x7f]
105          vcvtneps2bf16x  2032(%ecx), %xmm6
106
107// CHECK: vcvtneps2bf16   -512(%edx){1to4}, %xmm6 {%k7} {z}
108// CHECK: encoding: [0x62,0xf2,0x7e,0x9f,0x72,0x72,0x80]
109          vcvtneps2bf16   -512(%edx){1to4}, %xmm6 {%k7} {z}
110
111// CHECK: vcvtneps2bf16 %ymm5, %xmm6
112// CHECK: encoding: [0x62,0xf2,0x7e,0x28,0x72,0xf5]
113          vcvtneps2bf16 %ymm5, %xmm6
114
115// CHECK: vcvtneps2bf16y  268435456(%esp,%esi,8), %xmm6 {%k7}
116// CHECK: encoding: [0x62,0xf2,0x7e,0x2f,0x72,0xb4,0xf4,0x00,0x00,0x00,0x10]
117          vcvtneps2bf16y  268435456(%esp,%esi,8), %xmm6 {%k7}
118
119// CHECK: vcvtneps2bf16   (%ecx){1to8}, %xmm6
120// CHECK: encoding: [0x62,0xf2,0x7e,0x38,0x72,0x31]
121          vcvtneps2bf16   (%ecx){1to8}, %xmm6
122
123// CHECK: vcvtneps2bf16y  4064(%ecx), %xmm6
124// CHECK: encoding: [0x62,0xf2,0x7e,0x28,0x72,0x71,0x7f]
125          vcvtneps2bf16y  4064(%ecx), %xmm6
126
127// CHECK: vcvtneps2bf16   -512(%edx){1to8}, %xmm6 {%k7} {z}
128// CHECK: encoding: [0x62,0xf2,0x7e,0xbf,0x72,0x72,0x80]
129          vcvtneps2bf16   -512(%edx){1to8}, %xmm6 {%k7} {z}
130
131// CHECK: vdpbf16ps %ymm4, %ymm5, %ymm6
132// CHECK: encoding: [0x62,0xf2,0x56,0x28,0x52,0xf4]
133          vdpbf16ps %ymm4, %ymm5, %ymm6
134
135// CHECK: vdpbf16ps   268435456(%esp,%esi,8), %ymm5, %ymm6 {%k7}
136// CHECK: encoding: [0x62,0xf2,0x56,0x2f,0x52,0xb4,0xf4,0x00,0x00,0x00,0x10]
137          vdpbf16ps   268435456(%esp,%esi,8), %ymm5, %ymm6 {%k7}
138
139// CHECK: vdpbf16ps   (%ecx){1to8}, %ymm5, %ymm6
140// CHECK: encoding: [0x62,0xf2,0x56,0x38,0x52,0x31]
141          vdpbf16ps   (%ecx){1to8}, %ymm5, %ymm6
142
143// CHECK: vdpbf16ps   4064(%ecx), %ymm5, %ymm6
144// CHECK: encoding: [0x62,0xf2,0x56,0x28,0x52,0x71,0x7f]
145          vdpbf16ps   4064(%ecx), %ymm5, %ymm6
146
147// CHECK: vdpbf16ps   -512(%edx){1to8}, %ymm5, %ymm6 {%k7} {z}
148// CHECK: encoding: [0x62,0xf2,0x56,0xbf,0x52,0x72,0x80]
149          vdpbf16ps   -512(%edx){1to8}, %ymm5, %ymm6 {%k7} {z}
150
151// CHECK: vdpbf16ps %xmm4, %xmm5, %xmm6
152// CHECK: encoding: [0x62,0xf2,0x56,0x08,0x52,0xf4]
153          vdpbf16ps %xmm4, %xmm5, %xmm6
154
155// CHECK: vdpbf16ps   268435456(%esp,%esi,8), %xmm5, %xmm6 {%k7}
156// CHECK: encoding: [0x62,0xf2,0x56,0x0f,0x52,0xb4,0xf4,0x00,0x00,0x00,0x10]
157          vdpbf16ps   268435456(%esp,%esi,8), %xmm5, %xmm6 {%k7}
158
159// CHECK: vdpbf16ps   (%ecx){1to4}, %xmm5, %xmm6
160// CHECK: encoding: [0x62,0xf2,0x56,0x18,0x52,0x31]
161          vdpbf16ps   (%ecx){1to4}, %xmm5, %xmm6
162
163// CHECK: vdpbf16ps   2032(%ecx), %xmm5, %xmm6
164// CHECK: encoding: [0x62,0xf2,0x56,0x08,0x52,0x71,0x7f]
165          vdpbf16ps   2032(%ecx), %xmm5, %xmm6
166
167// CHECK: vdpbf16ps   -512(%edx){1to4}, %xmm5, %xmm6 {%k7} {z}
168// CHECK: encoding: [0x62,0xf2,0x56,0x9f,0x52,0x72,0x80]
169          vdpbf16ps   -512(%edx){1to4}, %xmm5, %xmm6 {%k7} {z}
170
171