[Bug target/82855] AVX512: replace OP+movemask with OP_mask+ktest

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Nov 6 13:00:00 GMT 2017


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82855

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 42550
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=42550&action=edit
gcc8-pr82855-1.patch

Untested patch, part 3.  With these 3, I get for the second function
with -O2 -mavx512{vl,dq} -mtune=intel:
        vpxord  %xmm0, %xmm0, %xmm0
        xorl    %eax, %eax
        vpcmpeqd        (%rdi), %ymm0, %k1
        ktestb  %k1, %k1
        sete    %al
With the generic tuning, the load is performed separately from the comparison.


More information about the Gcc-bugs mailing list