[Bug target/90028] On Intel Skylake (-march=native) generated avx512 instruction can be wrong
ferruh.yigit at intel dot com
gcc-bugzilla@gcc.gnu.org
Tue Apr 9 18:34:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90028
--- Comment #2 from Ferruh YIGIT <ferruh.yigit at intel dot com> ---
While preparing the support files for this report, via --save-temps, recognized
that generated .s file output is a little different, and correct assuming the
suspicion on source of the failure was right:
3495 movl $-1, %edx
3496 salq $5, %rax
3497 xorl %ecx, %ecx
3498 kmovb %edx, %k1
3499 .p2align 4,,10
3500 .p2align 3
3501 .L540:
3502 vmovdqu64 (%rsi,%rcx), %ymm1
3503 kmovb %k1, %k2
3504 vpgatherqq 8(,%ymm1,1), %ymm0{%k2}
3505 kmovb %k1, %k3
3506 vpaddq %ymm1, %ymm0, %ymm0
3507 vpgatherqq 0(,%ymm1,1), %ymm2{%k3}
3508 vpsubq %ymm2, %ymm0, %ymm0
3509 vmovdqu64 %ymm0, (%r8,%rcx)
It has "vpgatherqq 8 ..."
Attaching .s and .i files.
Does this mean the problem is in the assembler?
/usr/bin/as --version
GNU assembler version 2.31.1-24.fc29
More information about the Gcc-bugs
mailing list