public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/67800] New: [6 Regression] Missed vectorization opportunity on x86
@ 2015-10-01 15:48 afomin.mailbox at gmail dot com
  2015-10-01 16:17 ` [Bug tree-optimization/67800] " afomin.mailbox at gmail dot com
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: afomin.mailbox at gmail dot com @ 2015-10-01 15:48 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800

            Bug ID: 67800
           Summary: [6 Regression] Missed vectorization opportunity on x86
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: afomin.mailbox at gmail dot com
                CC: izamyatin at gmail dot com, rguenth at gcc dot gnu.org,
                    ysrumyan at gmail dot com
  Target Milestone: ---
            Target: i686-*-*

Created attachment 36434
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36434&action=edit
A reproducer

A loop in the test attached compiled with -m32 -msse4.2 -O2 -ftree-vectorize
-fPIE -pie -c is no more vectorized after r223525 (while on r223524 everything
is OK) because of strange DOT_PROD_EXPR recognition (see below).

vect_is_simple_use: operand _15
def_stmt: _15 = _14 * 76;
type of def: internal
vect_recog_dot_prod_pattern: detected: patt_47 = DOT_PROD_EXPR <_2, 76, _17>;
pattern recognized: patt_47 = DOT_PROD_EXPR <_2, 76, _17>;


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
  2015-10-01 15:48 [Bug tree-optimization/67800] New: [6 Regression] Missed vectorization opportunity on x86 afomin.mailbox at gmail dot com
@ 2015-10-01 16:17 ` afomin.mailbox at gmail dot com
  2015-10-02  9:33 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: afomin.mailbox at gmail dot com @ 2015-10-01 16:17 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800

--- Comment #1 from Alexander Fomin <afomin.mailbox at gmail dot com> ---
Nota bene: -fPIE -pie options can be ommited.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
  2015-10-01 15:48 [Bug tree-optimization/67800] New: [6 Regression] Missed vectorization opportunity on x86 afomin.mailbox at gmail dot com
  2015-10-01 16:17 ` [Bug tree-optimization/67800] " afomin.mailbox at gmail dot com
@ 2015-10-02  9:33 ` rguenth at gcc dot gnu.org
  2015-10-29  8:35 ` izamyatin at gmail dot com
  2015-10-29  9:54 ` rguenth at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-10-02  9:33 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800

Richard Biener <rguenth at gcc dot gnu.org> 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 <rguenth at gcc dot gnu.org> ---
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


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
  2015-10-01 15:48 [Bug tree-optimization/67800] New: [6 Regression] Missed vectorization opportunity on x86 afomin.mailbox at gmail dot com
  2015-10-01 16:17 ` [Bug tree-optimization/67800] " afomin.mailbox at gmail dot com
  2015-10-02  9:33 ` rguenth at gcc dot gnu.org
@ 2015-10-29  8:35 ` izamyatin at gmail dot com
  2015-10-29  9:54 ` rguenth at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: izamyatin at gmail dot com @ 2015-10-29  8:35 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800

--- Comment #3 from Igor Zamyatin <izamyatin at gmail dot com> ---
Richard, do you have any plans regarding this?


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/67800] [6 Regression] Missed vectorization opportunity on x86
  2015-10-01 15:48 [Bug tree-optimization/67800] New: [6 Regression] Missed vectorization opportunity on x86 afomin.mailbox at gmail dot com
                   ` (2 preceding siblings ...)
  2015-10-29  8:35 ` izamyatin at gmail dot com
@ 2015-10-29  9:54 ` rguenth at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-10-29  9:54 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67800

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Depends on|                            |67612

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
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  <rguenther@suse.de>

        * 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?)


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-10-29  9:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-01 15:48 [Bug tree-optimization/67800] New: [6 Regression] Missed vectorization opportunity on x86 afomin.mailbox at gmail dot com
2015-10-01 16:17 ` [Bug tree-optimization/67800] " afomin.mailbox at gmail dot com
2015-10-02  9:33 ` rguenth at gcc dot gnu.org
2015-10-29  8:35 ` izamyatin at gmail dot com
2015-10-29  9:54 ` rguenth at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).