[Bug target/69671] [6 Regression] FAIL: gcc.target/i386/avx512vl-vpmovqb-1.c scan-assembler-times vpmovqb[ \\t]+[^{\n]*%ymm[0-9]+[^\n]*%xmm[0-9]+{%k[1-7]}{z}(?
ktkachov at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Feb 15 11:35:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69671
--- Comment #18 from ktkachov at gcc dot gnu.org ---
(In reply to Jakub Jelinek from comment #17)
> (In reply to ktkachov from comment #16)
> > (In reply to Jakub Jelinek from comment #15)
> > > Yeah, my preference is to back out the cse.c one-liner for GCC 6.
> >
> > IMO the cse.c patch is the correct fix for the code quality regression seen
> > on the gcc.target/arm/wmul-1.c and gcc.target/arm/wmul-2.c tests on arm when
> > tuning for -mcpu=cortex-a9, which is a fairly popular arm target.
>
> While it may be a correct fix, IMHO it is not appropriate for this late in
> the release cycle.
>
> > The patch didn't have a performance impact on SPEC2000 and SPEC2006 on arm,
> > but I did see the adverse code quality effect from gcc.target/arm/wmul-1.c
> > and gcc.target/arm/wmul-2.c on a popular embedded benchmark without it.
> >
> > So reverting this would cause performance regressions on some normal integer
> > code on arm (not using intrinsics).
> >
> > How risky at this stage is it to do the define_subst fix for the AVX
> > patterns?
>
> It affects lots of patterns in the i?86 backend, just grep for 0C
> constraints, especially the subst.md use adds it to most of the vector
> instructions even when they don't have it explicitly. So, it is very risky
> to change those now.
Ok, if that's the case then we should XFAIL the gcc.target/arm/wmul-1.c and
gcc.target/arm/wmul-2.c tests and fix the AVX patterns for GCC 7 so that the
cse.c change can go in for that release.
More information about the Gcc-bugs
mailing list