public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/52870] New: ICE during SLP pattern matching
@ 2012-04-04 15:54 uweigand at gcc dot gnu.org
  2012-04-04 15:56 ` [Bug tree-optimization/52870] " uweigand at gcc dot gnu.org
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: uweigand at gcc dot gnu.org @ 2012-04-04 15:54 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 52870
           Summary: ICE during SLP pattern matching
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: uweigand@gcc.gnu.org
            Target: x86_64-linux-gnu


Building the following testcase with -O -ftree-vectorize on x86_64:

long
test (int *x)
{
  unsigned long sx, xprec;

  sx = *x >= 0 ? *x : -*x;

  xprec = sx * 64;

  if (sx < 16384)
    foo (sx);

  return xprec;
}


results in an ICE:

crash1.c:5:1: internal compiler error: vector VEC(vec_void_p,base) index domain
error, in vinfo_for_stmt at tree-vectorizer.h:628

(When building with --disable-checking, we get a segmentation fault instead.)


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

* [Bug tree-optimization/52870] ICE during SLP pattern matching
  2012-04-04 15:54 [Bug tree-optimization/52870] New: ICE during SLP pattern matching uweigand at gcc dot gnu.org
@ 2012-04-04 15:56 ` uweigand at gcc dot gnu.org
  2012-04-06 18:32 ` uweigand at gcc dot gnu.org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: uweigand at gcc dot gnu.org @ 2012-04-04 15:56 UTC (permalink / raw)
  To: gcc-bugs

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

Ulrich Weigand <uweigand at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2012-04-04
         AssignedTo|unassigned at gcc dot       |uweigand at gcc dot gnu.org
                   |gnu.org                     |
     Ever Confirmed|0                           |1

--- Comment #1 from Ulrich Weigand <uweigand at gcc dot gnu.org> 2012-04-04 15:56:06 UTC ---
It seems the problem is that vect_recog_widen_mult_pattern includes a statement
into a pattern it detects which is actually outside of the basic block that SLP
is currently operating on.  This later on causes the ICE since the statement
does not have an assigned stmt_vinfo.

I'm testing a fix.


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

* [Bug tree-optimization/52870] ICE during SLP pattern matching
  2012-04-04 15:54 [Bug tree-optimization/52870] New: ICE during SLP pattern matching uweigand at gcc dot gnu.org
  2012-04-04 15:56 ` [Bug tree-optimization/52870] " uweigand at gcc dot gnu.org
@ 2012-04-06 18:32 ` uweigand at gcc dot gnu.org
  2012-04-10 10:57 ` uweigand at gcc dot gnu.org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: uweigand at gcc dot gnu.org @ 2012-04-06 18:32 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Ulrich Weigand <uweigand at gcc dot gnu.org> 2012-04-06 18:31:58 UTC ---
Patch posted:
http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00360.html


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

* [Bug tree-optimization/52870] ICE during SLP pattern matching
  2012-04-04 15:54 [Bug tree-optimization/52870] New: ICE during SLP pattern matching uweigand at gcc dot gnu.org
  2012-04-04 15:56 ` [Bug tree-optimization/52870] " uweigand at gcc dot gnu.org
  2012-04-06 18:32 ` uweigand at gcc dot gnu.org
@ 2012-04-10 10:57 ` uweigand at gcc dot gnu.org
  2012-04-10 10:58 ` uweigand at gcc dot gnu.org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: uweigand at gcc dot gnu.org @ 2012-04-10 10:57 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Ulrich Weigand <uweigand at gcc dot gnu.org> 2012-04-10 10:56:17 UTC ---
Author: uweigand
Date: Tue Apr 10 10:56:11 2012
New Revision: 186272

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=186272
Log:
    gcc/
    PR tree-optimization/52870
    * tree-vect-patterns.c (vect_recog_widen_mult_pattern): Verify that
    presumed pattern statement is within the same loop or basic block.

    gcc/testsuite/
    PR tree-optimization/52870
    * gcc.dg/vect/pr52870.c: New test.

Added:
    trunk/gcc/testsuite/gcc.dg/vect/pr52870.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-vect-patterns.c


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

* [Bug tree-optimization/52870] ICE during SLP pattern matching
  2012-04-04 15:54 [Bug tree-optimization/52870] New: ICE during SLP pattern matching uweigand at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2012-04-10 10:57 ` uweigand at gcc dot gnu.org
@ 2012-04-10 10:58 ` uweigand at gcc dot gnu.org
  2012-04-25  0:18 ` paolo.carlini at oracle dot com
  2012-05-04 14:58 ` uweigand at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: uweigand at gcc dot gnu.org @ 2012-04-10 10:58 UTC (permalink / raw)
  To: gcc-bugs

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

Ulrich Weigand <uweigand at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #4 from Ulrich Weigand <uweigand at gcc dot gnu.org> 2012-04-10 10:58:25 UTC ---
Fixed.


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

* [Bug tree-optimization/52870] ICE during SLP pattern matching
  2012-04-04 15:54 [Bug tree-optimization/52870] New: ICE during SLP pattern matching uweigand at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2012-04-10 10:58 ` uweigand at gcc dot gnu.org
@ 2012-04-25  0:18 ` paolo.carlini at oracle dot com
  2012-05-04 14:58 ` uweigand at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: paolo.carlini at oracle dot com @ 2012-04-25  0:18 UTC (permalink / raw)
  To: gcc-bugs

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

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dcb314 at hotmail dot com

--- Comment #5 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-04-25 00:17:23 UTC ---
*** Bug 52639 has been marked as a duplicate of this bug. ***


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

* [Bug tree-optimization/52870] ICE during SLP pattern matching
  2012-04-04 15:54 [Bug tree-optimization/52870] New: ICE during SLP pattern matching uweigand at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2012-04-25  0:18 ` paolo.carlini at oracle dot com
@ 2012-05-04 14:58 ` uweigand at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: uweigand at gcc dot gnu.org @ 2012-05-04 14:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Ulrich Weigand <uweigand at gcc dot gnu.org> 2012-05-04 14:56:52 UTC ---
Author: uweigand
Date: Fri May  4 14:56:48 2012
New Revision: 187162

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187162
Log:
2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     Backport from mainline:

     2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     PR tree-optimization/52633
     * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Swap order of
     vect_recog_widen_shift_pattern and vect_recog_over_widening_pattern.
     (vect_recog_over_widening_pattern): Remove handling of code that was
     already detected as over-widening pattern.  Remove special handling
     of "unsigned" cases.  Instead, support general case of conversion
     of the shift result to another type.

     2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     * tree-vect-patterns.c (vect_single_imm_use): New function.
     (vect_recog_widen_mult_pattern): Use it instead of open-coding loop.
     (vect_recog_over_widening_pattern): Likewise.
     (vect_recog_widen_shift_pattern): Likewise.

     2012-04-10  Ulrich Weigand  <ulrich.weigand@linaro.org>

     PR tree-optimization/52870
     * tree-vect-patterns.c (vect_recog_widen_mult_pattern): Verify that
     presumed pattern statement is within the same loop or basic block.

2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     Backport from mainline:

     2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     PR tree-optimization/52633
     * gcc.dg/vect/vect-over-widen-1.c: Two patterns should now be
     recognized as widening shifts instead of over-widening.
     * gcc.dg/vect/vect-over-widen-1-big-array.c: Likewise.
     * gcc.dg/vect/vect-over-widen-4.c: Likewise.
     * gcc.dg/vect/vect-over-widen-4-big-array.c: Likewise.
     * gcc.target/arm/pr52633.c: New test.

     2012-04-10  Ulrich Weigand  <ulrich.weigand@linaro.org>

     PR tree-optimization/52870
     * gcc.dg/vect/pr52870.c: New test.

Added:
    branches/gcc-4_7-branch/gcc/testsuite/gcc.dg/vect/pr52870.c
    branches/gcc-4_7-branch/gcc/testsuite/gcc.target/arm/pr52633.c
Modified:
    branches/gcc-4_7-branch/gcc/ChangeLog
    branches/gcc-4_7-branch/gcc/testsuite/ChangeLog
   
branches/gcc-4_7-branch/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
    branches/gcc-4_7-branch/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
   
branches/gcc-4_7-branch/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
    branches/gcc-4_7-branch/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
    branches/gcc-4_7-branch/gcc/tree-vect-patterns.c


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

end of thread, other threads:[~2012-05-04 14:58 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-04 15:54 [Bug tree-optimization/52870] New: ICE during SLP pattern matching uweigand at gcc dot gnu.org
2012-04-04 15:56 ` [Bug tree-optimization/52870] " uweigand at gcc dot gnu.org
2012-04-06 18:32 ` uweigand at gcc dot gnu.org
2012-04-10 10:57 ` uweigand at gcc dot gnu.org
2012-04-10 10:58 ` uweigand at gcc dot gnu.org
2012-04-25  0:18 ` paolo.carlini at oracle dot com
2012-05-04 14:58 ` uweigand 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).