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.

Reply via email to