[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86 (DOT_PROD_EXPR in non-reduction)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 afomin at gcc dot gnu.org changed: What|Removed |Added Status|RESOLVED|CLOSED CC||afomin at gcc dot gnu.org --- Comment #10 from afomin at gcc dot gnu.org --- Thanks, closing it.
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86 (DOT_PROD_EXPR in non-reduction)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 Richard Biener changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #9 from Richard Biener --- Fixed.
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86 (DOT_PROD_EXPR in non-reduction)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 --- Comment #8 from Richard Biener --- Author: rguenth Date: Thu Dec 3 08:43:22 2015 New Revision: 231221 URL: https://gcc.gnu.org/viewcvs?rev=231221=gcc=rev Log: 2015-12-03 Richard BienerPR tree-optimization/67800 PR tree-optimization/68333 * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Restore restriction to reduction contexts but allow SLP reductions as well. (vect_recog_sad_pattern): Likewise. (vect_recog_widen_sum_pattern): Likewise. * gcc.target/i386/vect-pr67800.c: New testcase. Added: trunk/gcc/testsuite/gcc.target/i386/vect-pr67800.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-vect-patterns.c
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86 (DOT_PROD_EXPR in non-reduction)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 --- Comment #6 from rguenther at suse dot de --- On Tue, 1 Dec 2015, afomin.mailbox at gmail dot com wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 > > --- Comment #5 from Alexander Fomin --- > Richard, are there any updates on this? > > If BB vectorization support for reductions does not fit your plans for stage3, > we'd like to fix the regression by doing a partial revert described above. I will fix this PR in stage3 by either improving vectoirzation here or partially reverting the commit. Stay tuned.
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86 (DOT_PROD_EXPR in non-reduction)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 --- Comment #7 from Richard Biener --- Ah, so reverting these changes causes FAIL: gcc.dg/vect/slp-reduc-sad.c scan-tree-dump vect "vectorizing stmts using SLP" FAIL: gcc.dg/vect/slp-reduc-sad.c scan-tree-dump-times vect "vectorized 1 loops" 1 with similar testcases using a dot product or widening sum pattern would need to be added. Note that the above are in reduction context but only the first stmt of the reduction chain is marked as such. Thus we need to amend the check with ! STMT_VINFO_GROUP_FIRST_ELEMENT (stmt_vinfo). Testing that now.
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86 (DOT_PROD_EXPR in non-reduction)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 --- Comment #5 from Alexander Fomin --- Richard, are there any updates on this? If BB vectorization support for reductions does not fit your plans for stage3, we'd like to fix the regression by doing a partial revert described above.
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 --- Comment #3 from Igor Zamyatin --- Richard, do you have any plans regarding this?
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 Richard Biener changed: What|Removed |Added Depends on||67612 --- Comment #4 from Richard Biener --- The other bug was PR67612. I have a half-way started DOT_PPROD (and SAD_EXPR) support in vectorizable_conversion but it's not trivial as it doesn't fit there very. I've got distracted meanwhile. A way to fix the regressions (but not PR67612) is to revert the reduction check parts of 2015-05-22 Richard Biener* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Replace assert with guard, remove check on detected reduction. (vect_recog_sad_pattern): Likewise. (vect_recog_widen_sum_pattern): Likewise. which was preparation for BB vectorization support for reductions (which I didn't get to finish). But I'd rather have non-reduction support for DOT_PROD and SAD_EXPR and hope to get to that during stage3. If you can beat me to it more power to you ;) Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67612 [Bug 67612] Unable to vectorize DOT_PROD_EXPR (PMADDWD?)
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 Richard Biener changed: What|Removed |Added Keywords||missed-optimization Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2015-10-02 Blocks||53947 Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org Target Milestone|--- |6.0 Ever confirmed|0 |1 --- Comment #2 from Richard Biener --- Mine. I think this particular issue was also noticed in another bug. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53947 [Bug 53947] [meta-bug] vectorizer missed-optimizations
[Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800 --- Comment #1 from Alexander Fomin --- Nota bene: -fPIE -pie options can be ommited.