https://sourceware.org/bugzilla/show_bug.cgi?id=18700
--- Comment #4 from lili.cui at intel dot com <lili.cui at intel dot com> ---
This is not an issue anymore.
I tested these instructions on a machine with AVX512 and they are correct.
0000000000001222 <foo>:
1222: f3 0f 1e fa endbr64
1226: 55 push %rbp
1227: 48 89 e5 mov %rsp,%rbp
122a: 62 f1 f5 18 c2 ca 00 vcmpeqpd {sae},%zmm2,%zmm1,%k1
1231: 62 f1 f5 48 c2 ca 00 vcmpeqpd %zmm2,%zmm1,%k1
1238: 62 f1 f7 18 c2 ca 00 vcmpeqsd {sae},%xmm2,%xmm1,%k1
123f: 62 f1 f7 08 c2 ca 00 vcmpeqsd %xmm2,%xmm1,%k1
1246: 62 f1 f5 38 c2 ca 00 vcmpeqpd {sae},%zmm2,%zmm1,%k1
124d: 5d pop %rbp
124e: c3 ret
For "62 f1 f5 38 c2 ca 00 vcmpeqpd {sae},%zmm2,%zmm1,%k1"
I think when reg-reg and EVEX.b is 1, vcmpeqpd will ignore EVEX.L'L(I tested
them in the foo), and when EVEX.b is 0, EVEX.L'L makes sense.
Thanks to Michael for pointing out the inconsistencies in SDM. I checked them
one by one in SDM and found that they have all been corrected. Now the logic is
clearer.
For vcmpeqpd :
1c: 62 f1 f5 18 c2 ca 00 vcmpeqpd {sae},%zmm2,%zmm1,%k1
23: 62 f1 f5 38 c2 ca 00 vcmpeqpd {sae},%zmm2,%zmm1,%k1
2a: 62 f1 f5 58 c2 ca 00 vcmpeqpd {sae},%zmm2,%zmm1,%k1
31: 62 f1 f5 78 c2 ca 00 vcmpeqpd {sae},%zmm2,%zmm1,%k1
I think when reg-reg and EVEX.b is 1, vcmpeqpd will ignore EVEX.L'L(I tested
them in the foo), and when EVEX.b is 0, EVEX.L'L makes sense.
--
You are receiving this mail because:
You are on the CC list for the bug.