[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2020-01-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Richard Biener changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-12-09 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Martin Liška changed: What|Removed |Added CC||marxin at gcc dot gnu.org --- Comment

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-09-01 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #37 from rguenther at suse dot de --- On September 1, 2019 12:05:52 PM GMT+02:00, ubizjak at gmail dot com wrote: >https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 > >--- Comment #36 from Uroš Bizjak --- >(In reply to Richard

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-09-01 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #36 from Uroš Bizjak --- (In reply to Richard Biener from comment #30) > Hmm, it regresses the gcc.target/i386/minmax-6.c though and thus cactusADM > (IIRC). I was looking a bit into minmax6.c failure. Apparently, despite

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-20 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #35 from Rainer Orth --- Between 20190819 (r274678) and 20190820 (r274749), a new failure was introduced: +FAIL: gcc.target/i386/minmax-6.c scan-assembler-not rsp Seen on both i386-pc-solaris2.11 with -m64 and x86_64-pc-linux-gnu

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-20 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Rainer Orth changed: What|Removed |Added CC||ro at gcc dot gnu.org --- Comment #34

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #33 from Richard Biener --- (In reply to Uroš Bizjak from comment #32) > (In reply to H.J. Lu from comment #31) > > > > No, IMO IRA should be "fixed" to avoid stack temporary and (based on some > > > cost metric) use direct move for

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-20 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #32 from Uroš Bizjak --- (In reply to H.J. Lu from comment #31) > > No, IMO IRA should be "fixed" to avoid stack temporary and (based on some > > cost metric) use direct move for paradoxical subregs. > > The problem is > > /*

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-19 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #31 from H.J. Lu --- (In reply to Uroš Bizjak from comment #28) > (In reply to Richard Biener from comment #26) > > This is the powers of simplify_subreg I guess. We're lucky it doesn't do > > this to arbitrary arithmetic. > > > >

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-19 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #30 from Richard Biener --- (In reply to Richard Biener from comment #29) > (In reply to Uroš Bizjak from comment #27) > > (In reply to rguent...@suse.de from comment #25) > > > and STV converting single-instruction 'chains': > > >

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-19 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #29 from Richard Biener --- (In reply to Uroš Bizjak from comment #27) > (In reply to rguent...@suse.de from comment #25) > > and STV converting single-instruction 'chains': > > > > Collected chain #40... > > insns: 381 > >

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-19 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #28 from Uroš Bizjak --- (In reply to Richard Biener from comment #26) > This is the powers of simplify_subreg I guess. We're lucky it doesn't do > this to arbitrary arithmetic. > > So we need to really change all defs we introduce

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-19 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #27 from Uroš Bizjak --- (In reply to rguent...@suse.de from comment #25) > On Sat, 17 Aug 2019, ubizjak at gmail dot com wrote: > > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 > > > > --- Comment #24 from Uroš Bizjak ---

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-19 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #26 from Richard Biener --- This is the powers of simplify_subreg I guess. We're lucky it doesn't do this to arbitrary arithmetic. So we need to really change all defs we introduce to vector modes instead of making our live easy

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-19 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #25 from rguenther at suse dot de --- On Sat, 17 Aug 2019, ubizjak at gmail dot com wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 > > --- Comment #24 from Uroš Bizjak --- > It looks that the patch introduced a

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-17 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #24 from Uroš Bizjak --- It looks that the patch introduced a (small?) runtime regression of 5% in SPEC2000 300.twolf on haswell [1]. Maybe worth looking at. [1]

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-14 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #22 from Richard Biener --- Author: rguenth Date: Wed Aug 14 12:04:05 2019 New Revision: 274481 URL: https://gcc.gnu.org/viewcvs?rev=274481=gcc=rev Log: 2019-08-14 Richard Biener Uroš Bizjak PR target/91154

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-14 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #23 from Richard Biener --- Fixed for {x86_64,i?86}-*-* (hopefully).

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-14 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #21 from Richard Biener --- Author: rguenth Date: Wed Aug 14 08:31:54 2019 New Revision: 274422 URL: https://gcc.gnu.org/viewcvs?rev=274422=gcc=rev Log: 2019-08-14 Richard Biener PR target/91154 *

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-09 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #20 from rguenther at suse dot de --- On Wed, 7 Aug 2019, segher at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 > > Segher Boessenkool changed: > >What|Removed

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-07 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Segher Boessenkool changed: What|Removed |Added CC||segher at gcc dot gnu.org ---

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-05 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #18 from Bill Schmidt --- Richi corrected me -- this is not vectorization, but use of SSE on lane zero to do scalar computation.

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-08-05 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Bill Schmidt changed: What|Removed |Added Target|x86_64-*-* |x86_64-*-* powerpc*-*-*

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-19 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #16 from Richard Biener --- Ah, because x86_64_general_operand allows memory but the v alternative not and reloading that is appearantly more expensive than not doing that and reloading the general reg later. Fun. Changing that to

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-19 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #15 from Richard Biener --- So another idea would be to provide [us]{min,max} patterns for integer modes that split after reload into a compare or jumpy sequence if allocated using GPR regs but also allow SSE reg alternatives which

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-18 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #14 from Richard Biener --- With Index: gcc/config/i386/i386.md === --- gcc/config/i386/i386.md (revision 273567) +++ gcc/config/i386/i386.md (working copy) @@

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-18 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #13 from Richard Biener --- Testcase for the loop in question: void foo (int *dc, int *mc, int *tpdd, int *tpmd, int M) { int sc; int k; for (k = 1; k <= M; k++) { dc[k] = dc[k-1] + tpdd[k-1]; if ((sc = mc[k-1]

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-18 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #12 from Richard Biener --- On Skylake (Coffeelake actually) with the same binary (built for Haswell), the improvement is down to 5%. On Haswell, when I just replace the second conditional move like vmovd %ebx, %xmm12

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-18 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #11 from Richard Biener --- One could in some awkward way also rewrite the loop to use integer SSE (so we have access to min/max), relying on zero-filling scalar moves into %xmm and then using vector integer operations. Need to

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #10 from Richard Biener --- Note that on Haswell the conditional moves are two uops while on Broadwell and up they are only one uop (overall loop 16 uops vs. 18 uops). IACA doesn't show any particular issue (the iterations shoud

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Richard Biener changed: What|Removed |Added Blocks||85559 --- Comment #9 from Richard

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #8 from Richard Biener --- (In reply to Jakub Jelinek from comment #6) > So pretty much undo all ifcvt into conditional moves (aka pretend the target > doesn't have cmov) or something else? > The problem is that cmov isn't

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-17 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #7 from Uroš Bizjak --- This is PR 56309, again and again.

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-17 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 --- Comment #6 from Jakub Jelinek --- So pretty much undo all ifcvt into conditional moves (aka pretend the target doesn't have cmov) or something else? The problem is that cmov isn't unconditionally bad or unconditionally good and moving in

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Richard Biener changed: What|Removed |Added CC||jakub at gcc dot gnu.org,

[Bug rtl-optimization/91154] [10 Regression] 456.hmmer regression on Haswell caused by r272922

2019-07-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91154 Richard Biener changed: What|Removed |Added Keywords|needs-bisection | Status|ASSIGNED