This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/71956] [7 Regression] 176.gcc fails on 32 bits when compiled with -march=core-avx2
- From: "ysrumyan at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 10 Aug 2016 16:47:56 +0000
- Subject: [Bug rtl-optimization/71956] [7 Regression] 176.gcc fails on 32 bits when compiled with -march=core-avx2
- Auto-submitted: auto-generated
- References: <bug-71956-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71956
Yuri Rumyantsev <ysrumyan at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ysrumyan at gmail dot com
--- Comment #2 from Yuri Rumyantsev <ysrumyan at gmail dot com> ---
Jakub,
I removed both your revisions in cse.c (c1) but it did not help - 176.gcc stll
gets RF on avx2 but not on avx. I assume that masked stores are responsible for
it since we have them in binaries:
.L2437:
vmovd %ecx, %xmm1
vpxor %xmm5, %xmm5, %xmm5
addl -40(%ebp), %eax
movl -28(%ebp), %edx
vpbroadcastd -36(%ebp), %ymm4
vpaddd .LC1, %ymm4, %ymm2
vpbroadcastd %xmm1, %ymm1
leal (%edx,%eax,4), %eax
vpsrlvd %ymm2, %ymm1, %ymm2
vpaddd %ymm7, %ymm4, %ymm3
vpand %ymm6, %ymm2, %ymm2
vpcmpeqd %ymm5, %ymm2, %ymm2
vpcmpeqd %ymm5, %ymm2, %ymm2
vptest %ymm2, %ymm2
je .L2446
vpmaskmovd %ymm0, %ymm2, (%eax)
.L2446:
vpsrlvd %ymm3, %ymm1, %ymm2
vpxor %xmm3, %xmm3, %xmm3
leal 32(%eax), %edx
vpaddd .LC3, %ymm4, %ymm4
vpand %ymm6, %ymm2, %ymm2
vpcmpeqd %ymm3, %ymm2, %ymm2
vpcmpeqd %ymm3, %ymm2, %ymm2
vptest %ymm2, %ymm2
je .L2447
vpmaskmovd %ymm0, %ymm2, (%edx)
Will try to determine the correct revision responsible for it.