public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction
       [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
@ 2010-12-16 13:12 ` rguenth at gcc dot gnu.org
  2011-04-28 15:35 ` [Bug tree-optimization/41881] [4.5/4.6/4.7 " rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2010-12-16 13:12 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.5.2                       |4.5.3

--- Comment #8 from Richard Guenther <rguenth at gcc dot gnu.org> 2010-12-16 13:03:20 UTC ---
GCC 4.5.2 is being released, adjusting target milestone.


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

* [Bug tree-optimization/41881] [4.5/4.6/4.7 regression] Complete unrolling (inner) versus vectorization of reduction
       [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
  2010-12-16 13:12 ` [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction rguenth at gcc dot gnu.org
@ 2011-04-28 15:35 ` rguenth at gcc dot gnu.org
  2011-05-18 12:07 ` irar at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-04-28 15:35 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.5.3                       |4.5.4

--- Comment #9 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-04-28 14:51:36 UTC ---
GCC 4.5.3 is being released, adjusting target milestone.


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

* [Bug tree-optimization/41881] [4.5/4.6/4.7 regression] Complete unrolling (inner) versus vectorization of reduction
       [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
  2010-12-16 13:12 ` [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction rguenth at gcc dot gnu.org
  2011-04-28 15:35 ` [Bug tree-optimization/41881] [4.5/4.6/4.7 " rguenth at gcc dot gnu.org
@ 2011-05-18 12:07 ` irar at gcc dot gnu.org
  2011-05-18 12:13 ` irar at il dot ibm.com
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: irar at gcc dot gnu.org @ 2011-05-18 12:07 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881

--- Comment #10 from irar at gcc dot gnu.org 2011-05-18 11:27:56 UTC ---
Author: irar
Date: Wed May 18 11:27:51 2011
New Revision: 173856

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173856
Log:


        PR tree-optimization/41881
        * tree-vectorizer.h (struct _loop_vec_info): Add new field
        reduction_chains along with a macro for its access.
        * tree-vect-loop.c (new_loop_vec_info): Initialize
        reduction chains.
        (destroy_loop_vec_info): Free reduction chains.
        (vect_analyze_loop_2): Return false if
        vect_analyze_slp() returns false.
        (vect_is_slp_reduction): New function.
        (vect_is_simple_reduction_1): Call
        vect_is_slp_reduction.
        (vect_create_epilog_for_reduction): Support SLP
        reduction chains.
        * tree-vect-slp.c (vect_get_and_check_slp_defs): Allow
        different definition types for reduction chains.
        (vect_supported_load_permutation_p): Don't allow
        permutations for reduction chains.
        (vect_analyze_slp_instance): Support reduction chains.
        (vect_analyze_slp): Try to build SLP instance from
        reduction chains.
        (vect_get_constant_vectors):  Handle reduction chains.
        (vect_schedule_slp_instance): Mark the first statement
        of the reduction chain as reduction.


Added:
    trunk/gcc/testsuite/gcc.dg/vect/O3-pr41881.c
    trunk/gcc/testsuite/gcc.dg/vect/O3-slp-reduc-10.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-vect-loop.c
    trunk/gcc/tree-vect-slp.c
    trunk/gcc/tree-vectorizer.h


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

* [Bug tree-optimization/41881] [4.5/4.6/4.7 regression] Complete unrolling (inner) versus vectorization of reduction
       [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2011-05-18 12:07 ` irar at gcc dot gnu.org
@ 2011-05-18 12:13 ` irar at il dot ibm.com
  2012-01-05 17:15 ` [Bug tree-optimization/41881] [4.5/4.6 " jakub at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: irar at il dot ibm.com @ 2011-05-18 12:13 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881

Ira Rosen <irar at il dot ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |irar at il dot ibm.com

--- Comment #11 from Ira Rosen <irar at il dot ibm.com> 2011-05-18 11:51:41 UTC ---
This patch enables vectorization of reduction in SLP making the unrolled loop
in fun2 vectorizable.


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

* [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction
       [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2011-05-18 12:13 ` irar at il dot ibm.com
@ 2012-01-05 17:15 ` jakub at gcc dot gnu.org
  2012-07-02 11:38 ` rguenth at gcc dot gnu.org
  2013-04-12 16:18 ` [Bug tree-optimization/41881] [4.6 " jakub at gcc dot gnu.org
  6 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-01-05 17:15 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org
            Summary|[4.5/4.6/4.7 regression]    |[4.5/4.6 regression]
                   |Complete unrolling (inner)  |Complete unrolling (inner)
                   |versus vectorization of     |versus vectorization of
                   |reduction                   |reduction

--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-01-05 17:14:11 UTC ---
Fixed on the trunk, thanks.


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

* [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction
       [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2012-01-05 17:15 ` [Bug tree-optimization/41881] [4.5/4.6 " jakub at gcc dot gnu.org
@ 2012-07-02 11:38 ` rguenth at gcc dot gnu.org
  2013-04-12 16:18 ` [Bug tree-optimization/41881] [4.6 " jakub at gcc dot gnu.org
  6 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-07-02 11:38 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.5.4                       |4.6.4

--- Comment #13 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-07-02 11:37:51 UTC ---
The 4.5 branch is being closed, adjusting target milestone.


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

* [Bug tree-optimization/41881] [4.6 regression] Complete unrolling (inner) versus vectorization of reduction
       [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2012-07-02 11:38 ` rguenth at gcc dot gnu.org
@ 2013-04-12 16:18 ` jakub at gcc dot gnu.org
  6 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-04-12 16:18 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.6.4                       |4.7.0

--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-04-12 16:17:46 UTC ---
The 4.6 branch has been closed, fixed in GCC 4.7.0.


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

* [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction
  2009-10-30 20:30 [Bug tree-optimization/41881] New: " drow at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2010-08-11 10:24 ` irar at il dot ibm dot com
@ 2010-08-30 15:51 ` rguenth at gcc dot gnu dot org
  3 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-08-30 15:51 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881


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

* [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction
  2009-10-30 20:30 [Bug tree-optimization/41881] New: " drow at gcc dot gnu dot org
  2010-08-10 16:02 ` [Bug tree-optimization/41881] [4.5/4.6 regression] " drow at gcc dot gnu dot org
  2010-08-11  9:29 ` rguenth at gcc dot gnu dot org
@ 2010-08-11 10:24 ` irar at il dot ibm dot com
  2010-08-30 15:51 ` rguenth at gcc dot gnu dot org
  3 siblings, 0 replies; 11+ messages in thread
From: irar at il dot ibm dot com @ 2010-08-11 10:24 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from irar at il dot ibm dot com  2010-08-11 10:24 -------
(In reply to comment #6)
> I think that SLP doesn't handle reduction.
> 

Not all kinds of reduction. We handle

#a1 = phi <a0, a2>
#b1 = phi <b0, b2>
...
a2 = a1 + x
b2 = b1 + y

Here we also have:
#a1 = phi <a0, a9>
...
a2 = a1 + x
...
a3 = a2 + y
...

a9 = a8 + z


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881


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

* [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction
  2009-10-30 20:30 [Bug tree-optimization/41881] New: " drow at gcc dot gnu dot org
  2010-08-10 16:02 ` [Bug tree-optimization/41881] [4.5/4.6 regression] " drow at gcc dot gnu dot org
@ 2010-08-11  9:29 ` rguenth at gcc dot gnu dot org
  2010-08-11 10:24 ` irar at il dot ibm dot com
  2010-08-30 15:51 ` rguenth at gcc dot gnu dot org
  3 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-08-11  9:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from rguenth at gcc dot gnu dot org  2010-08-11 09:28 -------
I think that SLP doesn't handle reduction.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.5.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881


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

* [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction
  2009-10-30 20:30 [Bug tree-optimization/41881] New: " drow at gcc dot gnu dot org
@ 2010-08-10 16:02 ` drow at gcc dot gnu dot org
  2010-08-11  9:29 ` rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 11+ messages in thread
From: drow at gcc dot gnu dot org @ 2010-08-10 16:02 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from drow at gcc dot gnu dot org  2010-08-10 16:01 -------
Verified on x86_64 using:

gcc-4.3 -O3 -o 43.s -S reduc.c -ftree-vectorizer-verbose=1
[two loops vectorized]
gcc-4.4 -O3 -o 43.s -S reduc.c -ftree-vectorizer-verbose=1
[one loop vectorized]


-- 

drow at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |irar at gcc dot gnu dot org
      Known to fail|                            |4.4.4
      Known to work|                            |4.3.5
            Summary|Complete unrolling (inner)  |[4.5/4.6 regression]
                   |versus vectorization of     |Complete unrolling (inner)
                   |reduction                   |versus vectorization of
                   |                            |reduction


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881


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

end of thread, other threads:[~2013-04-12 16:18 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-41881-4@http.gcc.gnu.org/bugzilla/>
2010-12-16 13:12 ` [Bug tree-optimization/41881] [4.5/4.6 regression] Complete unrolling (inner) versus vectorization of reduction rguenth at gcc dot gnu.org
2011-04-28 15:35 ` [Bug tree-optimization/41881] [4.5/4.6/4.7 " rguenth at gcc dot gnu.org
2011-05-18 12:07 ` irar at gcc dot gnu.org
2011-05-18 12:13 ` irar at il dot ibm.com
2012-01-05 17:15 ` [Bug tree-optimization/41881] [4.5/4.6 " jakub at gcc dot gnu.org
2012-07-02 11:38 ` rguenth at gcc dot gnu.org
2013-04-12 16:18 ` [Bug tree-optimization/41881] [4.6 " jakub at gcc dot gnu.org
2009-10-30 20:30 [Bug tree-optimization/41881] New: " drow at gcc dot gnu dot org
2010-08-10 16:02 ` [Bug tree-optimization/41881] [4.5/4.6 regression] " drow at gcc dot gnu dot org
2010-08-11  9:29 ` rguenth at gcc dot gnu dot org
2010-08-11 10:24 ` irar at il dot ibm dot com
2010-08-30 15:51 ` rguenth at gcc dot gnu dot 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).