[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / MC / X86 / intel-syntax-x86-avx512dq_vl.s
blobe2d6850623a98a9fce75fbb19dc010ce1ab89c9c
1 // RUN: llvm-mc -triple x86_64-unknown-unknown -x86-asm-syntax=intel -output-asm-variant=1 --show-encoding %s | FileCheck %s
3 // CHECK: vcvtps2qq xmm2 {k2} {z}, qword ptr [rcx + 128]
4 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x7b,0x51,0x10]
5 vcvtps2qq xmm2 {k2} {z}, qword ptr [rcx + 0x80]
7 // CHECK: vcvtps2qq xmm2 {k2}, qword ptr [rcx + 128]
8 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x7b,0x51,0x10]
9 vcvtps2qq xmm2 {k2}, qword ptr [rcx + 0x80]
11 // CHECK: vcvtps2qq xmm2, qword ptr [rcx + 128]
12 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x7b,0x51,0x10]
13 vcvtps2qq xmm2, qword ptr [rcx + 0x80]
15 // CHECK: vcvttps2qq xmm1 {k2} {z}, qword ptr [rcx + 128]
16 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x7a,0x49,0x10]
17 vcvttps2qq xmm1 {k2} {z}, qword ptr [rcx + 0x80]
19 // CHECK: vcvttps2qq xmm1 {k2}, qword ptr [rcx + 128]
20 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x7a,0x49,0x10]
21 vcvttps2qq xmm1 {k2}, qword ptr [rcx + 0x80]
23 // CHECK: vcvttps2qq xmm1, qword ptr [rcx + 128]
24 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x7a,0x49,0x10]
25 vcvttps2qq xmm1, qword ptr [rcx + 0x80]
27 // CHECK: vcvtps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
28 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x79,0x49,0x10]
29 vcvtps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
31 // CHECK: vcvtps2uqq xmm1 {k2}, qword ptr [rcx + 128]
32 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x79,0x49,0x10]
33 vcvtps2uqq xmm1 {k2}, qword ptr [rcx + 128]
35 // CHECK: vcvtps2uqq xmm1, qword ptr [rcx + 128]
36 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x79,0x49,0x10]
37 vcvtps2uqq xmm1, qword ptr [rcx + 128]
39 // CHECK: vcvttps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
40 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x78,0x49,0x10]
41 vcvttps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
43 // CHECK: vcvttps2uqq xmm1 {k2}, qword ptr [rcx + 128]
44 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x78,0x49,0x10]
45 vcvttps2uqq xmm1 {k2}, qword ptr [rcx + 128]
47 // CHECK: vcvttps2uqq xmm1, qword ptr [rcx + 128]
48 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x78,0x49,0x10]
49 vcvttps2uqq xmm1, qword ptr [rcx + 128]
51 // CHECK: vcvtps2qq xmm2 {k2} {z}, qword ptr [rcx + 128]
52 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x7b,0x51,0x10]
53 vcvtps2qq xmm2 {k2} {z}, qword ptr [rcx + 0x80]
55 // CHECK: vcvtps2qq xmm2 {k2}, qword ptr [rcx + 128]
56 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x7b,0x51,0x10]
57 vcvtps2qq xmm2 {k2}, qword ptr [rcx + 0x80]
59 // CHECK: vcvtps2qq xmm2, qword ptr [rcx + 128]
60 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x7b,0x51,0x10]
61 vcvtps2qq xmm2, qword ptr [rcx + 0x80]
63 // CHECK: vcvttps2qq xmm1 {k2} {z}, qword ptr [rcx + 128]
64 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x7a,0x49,0x10]
65 vcvttps2qq xmm1 {k2} {z}, qword ptr [rcx + 0x80]
67 // CHECK: vcvttps2qq xmm1 {k2}, qword ptr [rcx + 128]
68 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x7a,0x49,0x10]
69 vcvttps2qq xmm1 {k2}, qword ptr [rcx + 0x80]
71 // CHECK: vcvttps2qq xmm1, qword ptr [rcx + 128]
72 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x7a,0x49,0x10]
73 vcvttps2qq xmm1, qword ptr [rcx + 0x80]
75 // CHECK: vcvtps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
76 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x79,0x49,0x10]
77 vcvtps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
79 // CHECK: vcvtps2uqq xmm1 {k2}, qword ptr [rcx + 128]
80 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x79,0x49,0x10]
81 vcvtps2uqq xmm1 {k2}, qword ptr [rcx + 128]
83 // CHECK: vcvtps2uqq xmm1, qword ptr [rcx + 128]
84 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x79,0x49,0x10]
85 vcvtps2uqq xmm1, qword ptr [rcx + 128]
87 // CHECK: vcvttps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
88 // CHECK: encoding: [0x62,0xf1,0x7d,0x8a,0x78,0x49,0x10]
89 vcvttps2uqq xmm1 {k2} {z}, qword ptr [rcx + 128]
91 // CHECK: vcvttps2uqq xmm1 {k2}, qword ptr [rcx + 128]
92 // CHECK: encoding: [0x62,0xf1,0x7d,0x0a,0x78,0x49,0x10]
93 vcvttps2uqq xmm1 {k2}, qword ptr [rcx + 128]
95 // CHECK: vcvttps2uqq xmm1, qword ptr [rcx + 128]
96 // CHECK: encoding: [0x62,0xf1,0x7d,0x08,0x78,0x49,0x10]
97 vcvttps2uqq xmm1, qword ptr [rcx + 128]
99 // CHECK: vfpclasspd k2, xmm18, 171
100 // CHECK: encoding: [0x62,0xb3,0xfd,0x08,0x66,0xd2,0xab]
101 vfpclasspd k2, xmm18, 0xab
103 // CHECK: vfpclasspd k2 {k7}, xmm18, 171
104 // CHECK: encoding: [0x62,0xb3,0xfd,0x0f,0x66,0xd2,0xab]
105 vfpclasspd k2 {k7}, xmm18, 0xab
107 // CHECK: vfpclasspd k2, xmmword ptr [rcx], 123
108 // CHECK: encoding: [0x62,0xf3,0xfd,0x08,0x66,0x11,0x7b]
109 vfpclasspd k2, xmmword ptr [rcx], 0x7b
111 // CHECK: vfpclasspd k2 {k7}, xmmword ptr [rcx], 123
112 // CHECK: encoding: [0x62,0xf3,0xfd,0x0f,0x66,0x11,0x7b]
113 vfpclasspd k2 {k7}, xmmword ptr [rcx], 0x7b
115 // CHECK: vfpclasspd k2, qword ptr [rcx]{1to2}, 123
116 // CHECK: encoding: [0x62,0xf3,0xfd,0x18,0x66,0x11,0x7b]
117 vfpclasspd k2, qword ptr [rcx]{1to2}, 0x7b
119 // CHECK: vfpclasspd k2 {k7}, qword ptr [rcx]{1to2}, 123
120 // CHECK: encoding: [0x62,0xf3,0xfd,0x1f,0x66,0x11,0x7b]
121 vfpclasspd k2 {k7}, qword ptr [rcx]{1to2}, 0x7b
123 // CHECK: vfpclassps k2, xmm18, 171
124 // CHECK: encoding: [0x62,0xb3,0x7d,0x08,0x66,0xd2,0xab]
125 vfpclassps k2, xmm18, 0xab
127 // CHECK: vfpclassps k2 {k7}, xmm18, 171
128 // CHECK: encoding: [0x62,0xb3,0x7d,0x0f,0x66,0xd2,0xab]
129 vfpclassps k2 {k7}, xmm18, 0xab
131 // CHECK: vfpclassps k2, xmmword ptr [rcx], 123
132 // CHECK: encoding: [0x62,0xf3,0x7d,0x08,0x66,0x11,0x7b]
133 vfpclassps k2, xmmword ptr [rcx], 0x7b
135 // CHECK: vfpclassps k2 {k7}, xmmword ptr [rcx], 123
136 // CHECK: encoding: [0x62,0xf3,0x7d,0x0f,0x66,0x11,0x7b]
137 vfpclassps k2 {k7}, xmmword ptr [rcx], 0x7b
139 // CHECK: vfpclassps k2, dword ptr [rcx]{1to4}, 123
140 // CHECK: encoding: [0x62,0xf3,0x7d,0x18,0x66,0x11,0x7b]
141 vfpclassps k2, dword ptr [rcx]{1to4}, 0x7b
143 // CHECK: vfpclassps k2 {k7}, dword ptr [rcx]{1to4}, 123
144 // CHECK: encoding: [0x62,0xf3,0x7d,0x1f,0x66,0x11,0x7b]
145 vfpclassps k2 {k7}, dword ptr [rcx]{1to4}, 0x7b
147 // CHECK: vfpclasspd k2, ymm18, 171
148 // CHECK: encoding: [0x62,0xb3,0xfd,0x28,0x66,0xd2,0xab]
149 vfpclasspd k2, ymm18, 0xab
151 // CHECK: vfpclasspd k2 {k7}, ymm18, 171
152 // CHECK: encoding: [0x62,0xb3,0xfd,0x2f,0x66,0xd2,0xab]
153 vfpclasspd k2 {k7}, ymm18, 0xab
155 // CHECK: vfpclasspd k2, ymmword ptr [rcx], 123
156 // CHECK: encoding: [0x62,0xf3,0xfd,0x28,0x66,0x11,0x7b]
157 vfpclasspd k2, ymmword ptr [rcx], 0x7b
159 // CHECK: vfpclasspd k2 {k7}, ymmword ptr [rcx], 123
160 // CHECK: encoding: [0x62,0xf3,0xfd,0x2f,0x66,0x11,0x7b]
161 vfpclasspd k2 {k7}, ymmword ptr [rcx], 0x7b
163 // CHECK: vfpclasspd k2, qword ptr [rcx]{1to4}, 123
164 // CHECK: encoding: [0x62,0xf3,0xfd,0x38,0x66,0x11,0x7b]
165 vfpclasspd k2, qword ptr [rcx]{1to4}, 0x7b
167 // CHECK: vfpclasspd k2 {k7}, qword ptr [rcx]{1to4}, 123
168 // CHECK: encoding: [0x62,0xf3,0xfd,0x3f,0x66,0x11,0x7b]
169 vfpclasspd k2 {k7}, qword ptr [rcx]{1to4}, 0x7b
171 // CHECK: vfpclassps k2, ymm18, 171
172 // CHECK: encoding: [0x62,0xb3,0x7d,0x28,0x66,0xd2,0xab]
173 vfpclassps k2, ymm18, 0xab
175 // CHECK: vfpclassps k2 {k7}, ymm18, 171
176 // CHECK: encoding: [0x62,0xb3,0x7d,0x2f,0x66,0xd2,0xab]
177 vfpclassps k2 {k7}, ymm18, 0xab
179 // CHECK: vfpclassps k2, ymmword ptr [rcx], 123
180 // CHECK: encoding: [0x62,0xf3,0x7d,0x28,0x66,0x11,0x7b]
181 vfpclassps k2, ymmword ptr [rcx], 0x7b
183 // CHECK: vfpclassps k2 {k7}, ymmword ptr [rcx], 123
184 // CHECK: encoding: [0x62,0xf3,0x7d,0x2f,0x66,0x11,0x7b]
185 vfpclassps k2 {k7}, ymmword ptr [rcx], 0x7b
187 // CHECK: vfpclassps k2, dword ptr [rcx]{1to8}, 123
188 // CHECK: encoding: [0x62,0xf3,0x7d,0x38,0x66,0x11,0x7b]
189 vfpclassps k2, dword ptr [rcx]{1to8}, 0x7b
191 // CHECK: vfpclassps k2 {k7}, dword ptr [rcx]{1to8}, 123
192 // CHECK: encoding: [0x62,0xf3,0x7d,0x3f,0x66,0x11,0x7b]
193 vfpclassps k2 {k7}, dword ptr [rcx]{1to8}, 0x7b