public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c
@ 2012-10-20 18:38 glisse at gcc dot gnu.org
  2012-10-22  9:05 ` [Bug middle-end/55001] " rguenth at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: glisse at gcc dot gnu.org @ 2012-10-20 18:38 UTC (permalink / raw)
  To: gcc-bugs


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

             Bug #: 55001
           Summary: Handle VEC_COND_EXPR in tree-vect-generic.c
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: glisse@gcc.gnu.org


Created attachment 28497
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28497
Old patch

Hello,

the code in tree-vect-generic.c to handle vector operations not provided by the
target doesn't know VEC_COND_EXPR. That didn't matter when the vectorizer was
the only producer, but front-ends are going to produce them as well any day
now.

Attaching the patch I was using when experimenting, but IIRC it wasn't in a
state for submission, and its assumption that the first argument can't be an
SSA_NAME or a constant is now wrong.


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

* [Bug middle-end/55001] Handle VEC_COND_EXPR in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
@ 2012-10-22  9:05 ` rguenth at gcc dot gnu.org
  2012-11-01 23:40 ` glisse at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-10-22  9:05 UTC (permalink / raw)
  To: gcc-bugs


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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-10-22
     Ever Confirmed|0                           |1

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> 2012-10-22 09:05:42 UTC ---
Confirmed.


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

* [Bug middle-end/55001] Handle VEC_COND_EXPR in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
  2012-10-22  9:05 ` [Bug middle-end/55001] " rguenth at gcc dot gnu.org
@ 2012-11-01 23:40 ` glisse at gcc dot gnu.org
  2012-11-01 23:43 ` [Bug middle-end/55001] Handle VEC_COND_EXPR better " glisse at gcc dot gnu.org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: glisse at gcc dot gnu.org @ 2012-11-01 23:40 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #2 from Marc Glisse <glisse at gcc dot gnu.org> 2012-11-01 23:39:48 UTC ---
Author: glisse
Date: Thu Nov  1 23:39:44 2012
New Revision: 193077

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=193077
Log:
2012-11-01  Marc Glisse  <marc.glisse@inria.fr>

    PR middle-end/55001

gcc/
    * tree-vect-generic.c (expand_vector_condition): New function.
    (expand_vector_operations_1): Call it.

testsuite/
    * g++.dg/ext/vector19.C: Remove target restrictions.
    * gcc.dg/fold-compare-7.c: New testcase.


Added:
    trunk/gcc/testsuite/gcc.dg/fold-compare-7.c   (with props)
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/ext/vector19.C
    trunk/gcc/tree-vect-generic.c

Propchange: trunk/gcc/testsuite/gcc.dg/fold-compare-7.c
            ('svn:eol-style' added)

Propchange: trunk/gcc/testsuite/gcc.dg/fold-compare-7.c
            ('svn:keywords' added)


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

* [Bug middle-end/55001] Handle VEC_COND_EXPR better in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
  2012-10-22  9:05 ` [Bug middle-end/55001] " rguenth at gcc dot gnu.org
  2012-11-01 23:40 ` glisse at gcc dot gnu.org
@ 2012-11-01 23:43 ` glisse at gcc dot gnu.org
  2012-11-27 23:29 ` hp at gcc dot gnu.org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: glisse at gcc dot gnu.org @ 2012-11-01 23:43 UTC (permalink / raw)
  To: gcc-bugs


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

Marc Glisse <glisse at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Handle VEC_COND_EXPR in     |Handle VEC_COND_EXPR better
                   |tree-vect-generic.c         |in tree-vect-generic.c

--- Comment #3 from Marc Glisse <glisse at gcc dot gnu.org> 2012-11-01 23:43:38 UTC ---
When vcond is not handled for large vector types, the code goes straight to
scalars. It should first try small vectors, as is done for other operations.


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

* [Bug middle-end/55001] Handle VEC_COND_EXPR better in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2012-11-01 23:43 ` [Bug middle-end/55001] Handle VEC_COND_EXPR better " glisse at gcc dot gnu.org
@ 2012-11-27 23:29 ` hp at gcc dot gnu.org
  2012-11-27 23:53 ` glisse at gcc dot gnu.org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: hp at gcc dot gnu.org @ 2012-11-27 23:29 UTC (permalink / raw)
  To: gcc-bugs


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

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hp at gcc dot gnu.org

--- Comment #4 from Hans-Peter Nilsson <hp at gcc dot gnu.org> 2012-11-27 23:29:08 UTC ---
Can this be considered fixed?  I don't see it failing for cris-* (anymore since
at least r193085) nor mmix-* (r193808), neither ports having vector support.


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

* [Bug middle-end/55001] Handle VEC_COND_EXPR better in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2012-11-27 23:29 ` hp at gcc dot gnu.org
@ 2012-11-27 23:53 ` glisse at gcc dot gnu.org
  2012-11-28  0:13 ` hp at gcc dot gnu.org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: glisse at gcc dot gnu.org @ 2012-11-27 23:53 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #5 from Marc Glisse <glisse at gcc dot gnu.org> 2012-11-27 23:52:58 UTC ---
(In reply to comment #4)
> Can this be considered fixed?

Not completely. It doesn't fail anymore (so I marked PR55167 as fixed), but for
architectures that support vectors of 2 elements, it will split a vector of 4
elements into 4 scalars instead of 2 subvectors, so this needs improving. The
patch was whatever I managed to write quickly to stop the ICEs.

Now if you prefer, I could open another bug for this enhancement and we could
close this one.


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

* [Bug middle-end/55001] Handle VEC_COND_EXPR better in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2012-11-27 23:53 ` glisse at gcc dot gnu.org
@ 2012-11-28  0:13 ` hp at gcc dot gnu.org
  2021-07-24 10:19 ` [Bug tree-optimization/55001] " pinskia at gcc dot gnu.org
  2022-02-14  7:14 ` rguenth at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: hp at gcc dot gnu.org @ 2012-11-28  0:13 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #6 from Hans-Peter Nilsson <hp at gcc dot gnu.org> 2012-11-28 00:13:00 UTC ---
(In reply to comment #5)
> (In reply to comment #4)
> > Can this be considered fixed?
> Not completely. It doesn't fail anymore (so I marked PR55167 as fixed),

> Now if you prefer, I could open another bug for this enhancement and we could
> close this one.

Sorry, no, I was actually mixing those PR's up, following up on a note I had
for the other PR.  Thanks for staying on it.


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

* [Bug tree-optimization/55001] Handle VEC_COND_EXPR better in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2012-11-28  0:13 ` hp at gcc dot gnu.org
@ 2021-07-24 10:19 ` pinskia at gcc dot gnu.org
  2022-02-14  7:14 ` rguenth at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-07-24 10:19 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |enhancement
          Component|middle-end                  |tree-optimization
           Keywords|                            |missed-optimization

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

* [Bug tree-optimization/55001] Handle VEC_COND_EXPR better in tree-vect-generic.c
  2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2021-07-24 10:19 ` [Bug tree-optimization/55001] " pinskia at gcc dot gnu.org
@ 2022-02-14  7:14 ` rguenth at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-02-14  7:14 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu.org

--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
*** Bug 104501 has been marked as a duplicate of this bug. ***

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

end of thread, other threads:[~2022-02-14  7:14 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-20 18:38 [Bug middle-end/55001] New: Handle VEC_COND_EXPR in tree-vect-generic.c glisse at gcc dot gnu.org
2012-10-22  9:05 ` [Bug middle-end/55001] " rguenth at gcc dot gnu.org
2012-11-01 23:40 ` glisse at gcc dot gnu.org
2012-11-01 23:43 ` [Bug middle-end/55001] Handle VEC_COND_EXPR better " glisse at gcc dot gnu.org
2012-11-27 23:29 ` hp at gcc dot gnu.org
2012-11-27 23:53 ` glisse at gcc dot gnu.org
2012-11-28  0:13 ` hp at gcc dot gnu.org
2021-07-24 10:19 ` [Bug tree-optimization/55001] " pinskia at gcc dot gnu.org
2022-02-14  7:14 ` 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).