public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3
@ 2015-05-01 11:01 dcb314 at hotmail dot com
  2015-05-01 11:25 ` [Bug tree-optimization/65961] [6 Regression] " trippels at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: dcb314 at hotmail dot com @ 2015-05-01 11:01 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 65961
           Summary: ice in vect_is_simple_use_1 with -O3
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com
  Target Milestone: ---

Created attachment 35435
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35435&action=edit
C source code

The attached code, when compiled by gcc trunk dated 20150429
and with flag -O3, says this:

qshs.c: In function ‘shs1’:
qshs.c:136:1: internal compiler error: in vect_is_simple_use_1, at
tree-vect-stmts.c:7867
0xdca504 vect_is_simple_use_1(tree_node*, gimple_statement_base*,
_loop_vec_info*, _bb_vec_info*, gimple_statement_base**, tree_node**,
vect_def_type*, tree_node**)
    ../../src/trunk/gcc/tree-vect-stmts.c:7867
0xdd3d5a vectorizable_operation
    ../../src/trunk/gcc/tree-vect-stmts.c:4676
0xddc731 vect_analyze_stmt(gimple_statement_base*, bool*, _slp_tree*)
    ../../src/trunk/gcc/tree-vect-stmts.c:7196
0xdf1319 vect_slp_analyze_node_operations
    ../../src/trunk/gcc/tree-vect-slp.c:2094

tree-vect-stmts.c:7867 is

    gcc_assert (*vectype != NULL_TREE);
>From gcc-bugs-return-485179-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Fri May 01 11:20:30 2015
Return-Path: <gcc-bugs-return-485179-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 17548 invoked by alias); 1 May 2015 11:20:30 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 17510 invoked by uid 48); 1 May 2015 11:20:26 -0000
From: "basile at opensource dot dyc.edu" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c/65958] -fstack-check breaks __builtin(alloca)
Date: Fri, 01 May 2015 11:20:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: c
X-Bugzilla-Version: 4.9.2
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: basile at opensource dot dyc.edu
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Resolution:
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: cc
Message-ID: <bug-65958-4-4BjTvnmtC8@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-65958-4@http.gcc.gnu.org/bugzilla/>
References: <bug-65958-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2015-05/txt/msg00019.txt.bz2
Content-length: 461

https://gcc.gnu.org/bugzilla/show_bug.cgi?ide958

Anthony G. Basile <basile at opensource dot dyc.edu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |basile at opensource dot dyc.edu

--- Comment #1 from Anthony G. Basile <basile at opensource dot dyc.edu> ---
We should add that we've only seen this on arm arch.


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
@ 2015-05-01 11:25 ` trippels at gcc dot gnu.org
  2015-05-04 10:54 ` mpolacek at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: trippels at gcc dot gnu.org @ 2015-05-01 11:25 UTC (permalink / raw)
  To: gcc-bugs

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

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-05-01
                 CC|                            |trippels at gcc dot gnu.org
          Component|c                           |tree-optimization
            Summary|ice in vect_is_simple_use_1 |[6 Regression] ice in
                   |with -O3                    |vect_is_simple_use_1 with
                   |                            |-O3
     Ever confirmed|0                           |1

--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
int *a;
void
foo ()
{
  do
    {
      a[16] = (a[1] ^ a[0]) << 1 | a[1];
      a[17] = (a[0] ^ a[1]) << 1 | a[0];
      a[18] = (a[0] ^ a[1]) << 1 | a[0];
      a[19] = (a[0] ^ a[1]) << 1 | a[0];
      a[20] = (a[0] ^ a[1]) << 1 | a[0];
      a[21] = (a[0] ^ a[1]) << 1 | a[0];
      a[22] = (a[0] ^ a[1]) << 1 | a[0];
      a[23] = (a[20] ^ a[1]) << 1 | a[9];
      a += 8;
    }
  while (1);
}


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
  2015-05-01 11:25 ` [Bug tree-optimization/65961] [6 Regression] " trippels at gcc dot gnu.org
@ 2015-05-04 10:54 ` mpolacek at gcc dot gnu.org
  2015-05-04 11:21 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2015-05-04 10:54 UTC (permalink / raw)
  To: gcc-bugs

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

Marek Polacek <mpolacek at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mpolacek at gcc dot gnu.org
   Target Milestone|---                         |6.0

--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Started with r222514.


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
  2015-05-01 11:25 ` [Bug tree-optimization/65961] [6 Regression] " trippels at gcc dot gnu.org
  2015-05-04 10:54 ` mpolacek at gcc dot gnu.org
@ 2015-05-04 11:21 ` rguenth at gcc dot gnu.org
  2015-05-12  9:49 ` rguenth at gcc dot gnu.org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-05-04 11:21 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot gnu.org

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
Mine.


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
                   ` (2 preceding siblings ...)
  2015-05-04 11:21 ` rguenth at gcc dot gnu.org
@ 2015-05-12  9:49 ` rguenth at gcc dot gnu.org
  2015-05-20  6:54 ` dcb314 at hotmail dot com
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-05-12  9:49 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Hmpf, so we have an operand that is both part of a regular SLP node _and_ is
part
of a SLP node that gets its operand built up from scalars.  So obviously
looking at STMT_VINFO_VECTORIZABLE (def-of-op) isn't giving the correct answer
(it depends on context).

I tried to avoid passing down the SLP node to vect_is_simple_use[_1], but that
is what it would take to fix this (well, or reject the SLP build while we
compute
STMT_VINFO_VECTORIZABLE ()).

I have to think more about what refactoring would make sense here.


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
                   ` (3 preceding siblings ...)
  2015-05-12  9:49 ` rguenth at gcc dot gnu.org
@ 2015-05-20  6:54 ` dcb314 at hotmail dot com
  2015-05-20  7:38 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: dcb314 at hotmail dot com @ 2015-05-20  6:54 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from David Binderman <dcb314 at hotmail dot com> ---
As of trunk 20150520, this bug looks fixed to me.


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
                   ` (4 preceding siblings ...)
  2015-05-20  6:54 ` dcb314 at hotmail dot com
@ 2015-05-20  7:38 ` rguenth at gcc dot gnu.org
  2015-06-02  7:50 ` rguenth at gcc dot gnu.org
  2015-06-03  7:42 ` rguenth at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-05-20  7:38 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
It might be mitigated for the testcase in question but the underlying problem
didn't get fixed.


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
                   ` (5 preceding siblings ...)
  2015-05-20  7:38 ` rguenth at gcc dot gnu.org
@ 2015-06-02  7:50 ` rguenth at gcc dot gnu.org
  2015-06-03  7:42 ` rguenth at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-06-02  7:50 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Tue Jun  2 07:50:19 2015
New Revision: 224013

URL: https://gcc.gnu.org/viewcvs?rev=224013&root=gcc&view=rev
Log:
2015-06-02  Richard Biener  <rguenther@suse.de>

        PR tree-optimization/65961
        * tree-vect-slp.c (vect_get_and_check_slp_defs): Remove bogus
        check and clarify dump message.
        (vect_build_slp_tree): If all children are built up from scalars
        build up the parent from scalars instead.
        * tree-vect-stmts.c (vect_is_simple_use): Cleanup.

        * gcc.dg/torture/pr65961.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.dg/torture/pr65961.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-vect-slp.c
    trunk/gcc/tree-vect-stmts.c


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

* [Bug tree-optimization/65961] [6 Regression] ice in vect_is_simple_use_1 with -O3
  2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
                   ` (6 preceding siblings ...)
  2015-06-02  7:50 ` rguenth at gcc dot gnu.org
@ 2015-06-03  7:42 ` rguenth at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-06-03  7:42 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.


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

end of thread, other threads:[~2015-06-03  7:42 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-01 11:01 [Bug c/65961] New: ice in vect_is_simple_use_1 with -O3 dcb314 at hotmail dot com
2015-05-01 11:25 ` [Bug tree-optimization/65961] [6 Regression] " trippels at gcc dot gnu.org
2015-05-04 10:54 ` mpolacek at gcc dot gnu.org
2015-05-04 11:21 ` rguenth at gcc dot gnu.org
2015-05-12  9:49 ` rguenth at gcc dot gnu.org
2015-05-20  6:54 ` dcb314 at hotmail dot com
2015-05-20  7:38 ` rguenth at gcc dot gnu.org
2015-06-02  7:50 ` rguenth at gcc dot gnu.org
2015-06-03  7:42 ` 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).