public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
@ 2011-11-09 21:52 belyshev at depni dot sinp.msu.ru
  2011-11-10 10:59 ` [Bug middle-end/51071] " rguenth at gcc dot gnu.org
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: belyshev at depni dot sinp.msu.ru @ 2011-11-09 21:52 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 51071
           Summary: [4.7 Regression] ICE in gimple_has_side_effects, at
                    gimple.c:2513
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: belyshev@depni.sinp.msu.ru
                CC: law@redhat.com


Fails since r175114 http://gcc.gnu.org/ml/gcc-cvs/2011-06/msg00603.html


2011-06-16  Jeff Law  <law@redhat.com>

       * tree-ssa-threadupdate.c (struct redirection_data): New field
       intermediate_edge.
       ...




// compile with -O2
void foo (void);
void bar (void *);
extern int t;

static void kmalloc_large (int size, int flags)
{
  (void) size;
  (void) flags;
  foo ();
  bar (({__here:&&__here;}));
}

static void kmalloc (int size, int flags)
{
  if (size)
    {
      if ((unsigned long) size > 0x1000)
    kmalloc_large (size, flags);

      if (flags)
    bar (({__here:&&__here;}));
    }
}

void compress_file_range (int i, int j, int k)
{
  int nr_pages = ({j < k;});

  if (i || t)
    kmalloc (0x1000UL * nr_pages, 0x40UL);
}



bug.c: In function 'compress_file_range':
bug.c:25:6: internal compiler error: in gimple_has_side_effects, at
gimple.c:2513


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
@ 2011-11-10 10:59 ` rguenth at gcc dot gnu.org
  2011-11-10 12:25 ` rguenth at gcc dot gnu.org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-11-10 10:59 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2011-11-10
         AssignedTo|unassigned at gcc dot       |rguenth at gcc dot gnu.org
                   |gnu.org                     |
   Target Milestone|---                         |4.7.0
     Ever Confirmed|0                           |1

--- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-11-10 10:51:51 UTC ---
That asserts are sort-of bogus (I'd wanted to get rid of them at some point).

We have:

(gdb) call debug_gimple_stmt (s)
__here:
(gdb) call debug_tree (op)
 <label_decl 0x7ffff5b55c00 __here
    type <void_type 0x7ffff5a34bd0 void VOID
        align 8 symtab 0 alias set -1 canonical type 0x7ffff5a34bd0
        pointer_to_this <pointer_type 0x7ffff5a34c78>>
    side-effects addressable used VOID file t2.c line 10 col 10
    align 1 context <function_decl 0x7ffff5b39c00 compress_file_range> initial
<error_mark 0x7ffff5a29c60> abstract_origin <label_decl 0x7ffff5b55080 __here>>

TREE_SIDE_EFFECTS on a LABEL_DECL is FORCED_LABEL ...

The loops in gimple_has_side_effects are never triggered unless they
hit the assert (if they ever cause us to return true we'd have returned
true already because of the gimple_has_volatile_ops check).

Mine.


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
  2011-11-10 10:59 ` [Bug middle-end/51071] " rguenth at gcc dot gnu.org
@ 2011-11-10 12:25 ` rguenth at gcc dot gnu.org
  2011-11-10 12:25 ` rguenth at gcc dot gnu.org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-11-10 12:25 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-11-10 12:22:52 UTC ---
Author: rguenth
Date: Thu Nov 10 12:22:46 2011
New Revision: 181253

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=181253
Log:
2011-11-10  Richard Guenther  <rguenther@suse.de>

    PR middle-end/51071
    * gimple.c (gimple_has_side_effects): Remove checking code
    that doesn't belong here.

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

Added:
    trunk/gcc/testsuite/gcc.dg/torture/pr51071.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/gimple.c
    trunk/gcc/testsuite/ChangeLog


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
  2011-11-10 10:59 ` [Bug middle-end/51071] " rguenth at gcc dot gnu.org
  2011-11-10 12:25 ` rguenth at gcc dot gnu.org
@ 2011-11-10 12:25 ` rguenth at gcc dot gnu.org
  2012-05-18 15:08 ` pageexec at freemail dot hu
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-11-10 12:25 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-11-10 12:23:17 UTC ---
Fixed.


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
                   ` (2 preceding siblings ...)
  2011-11-10 12:25 ` rguenth at gcc dot gnu.org
@ 2012-05-18 15:08 ` pageexec at freemail dot hu
  2012-05-21 10:10 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pageexec at freemail dot hu @ 2012-05-18 15:08 UTC (permalink / raw)
  To: gcc-bugs

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

pageexec at freemail dot hu changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pageexec at freemail dot hu

--- Comment #4 from pageexec at freemail dot hu 2012-05-18 15:02:57 UTC ---
this bug affects the 4.6 branch as well (e.g., on
linux-3.3.6/drivers/staging/sbe-2t3e3/netdev.c), so it should be backported
there too if possible.


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
                   ` (3 preceding siblings ...)
  2012-05-18 15:08 ` pageexec at freemail dot hu
@ 2012-05-21 10:10 ` rguenth at gcc dot gnu.org
  2012-05-21 12:40 ` pageexec at freemail dot hu
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-05-21 10:10 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-05-21 08:40:42 UTC ---
Do you have a testcase for that?


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
                   ` (4 preceding siblings ...)
  2012-05-21 10:10 ` rguenth at gcc dot gnu.org
@ 2012-05-21 12:40 ` pageexec at freemail dot hu
  2012-05-22 10:05 ` rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pageexec at freemail dot hu @ 2012-05-21 12:40 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from pageexec at freemail dot hu 2012-05-21 11:41:10 UTC ---
Created attachment 27458
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27458
test case for gcc 4.6.x

this is a compressed test case (would be too big to attach otherwise i think).
compile with:

 gcc -c netdev.i -o netdev.o -O2 -fno-delete-null-pointer-checks

(the -fno-delete-null-pointer-checks switch is important). you'll also need a
debug build of gcc (i had
--enable-checking=assert,misc,rtl,rtlflag,runtime,tree here) and the error i
get is:

drivers/staging/sbe-2t3e3/netdev.c: In function 't3e3_open':
drivers/staging/sbe-2t3e3/netdev.c:85:5: internal compiler error: in
gimple_has_side_effects, at gimple.c:2329

with the code around gimple.c:2329 being:

2324       for (i = 0; i < gimple_num_ops (s); i++)
2325 »·······{
2326 »·······  tree op = gimple_op (s, i);
2327 »·······  if (op && TREE_SIDE_EFFECTS (op))
2328 »·······    {
2329 »·······      gcc_checking_assert (gimple_has_volatile_ops (s));
2330 »·······      return true;
2331 »·······    }
2332 »·······}


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
                   ` (5 preceding siblings ...)
  2012-05-21 12:40 ` pageexec at freemail dot hu
@ 2012-05-22 10:05 ` rguenth at gcc dot gnu.org
  2012-05-22 10:07 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-05-22 10:05 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-05-22 09:23:14 UTC ---
Author: rguenth
Date: Tue May 22 09:23:01 2012
New Revision: 187764

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187764
Log:
2012-05-22  Richard Guenther  <rguenther@suse.de>

        Backport from mainline
        2011-11-10  Richard Guenther  <rguenther@suse.de>

    PR middle-end/51071
    * gimple.c (gimple_has_side_effects): Remove checking code
    that doesn't belong here.

    * gcc.dg/torture/pr51071.c: New testcase.
    * gcc.dg/torture/pr51071-2.c: Likewise.

Added:
    branches/gcc-4_6-branch/gcc/testsuite/gcc.dg/torture/pr51071-2.c
    branches/gcc-4_6-branch/gcc/testsuite/gcc.dg/torture/pr51071.c
Modified:
    branches/gcc-4_6-branch/gcc/ChangeLog
    branches/gcc-4_6-branch/gcc/gimple.c
    branches/gcc-4_6-branch/gcc/testsuite/ChangeLog


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
                   ` (6 preceding siblings ...)
  2012-05-22 10:05 ` rguenth at gcc dot gnu.org
@ 2012-05-22 10:07 ` rguenth at gcc dot gnu.org
  2012-05-22 10:15 ` rguenth at gcc dot gnu.org
  2012-05-22 10:19 ` rguenth at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-05-22 10:07 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-05-22 09:28:44 UTC ---
Author: rguenth
Date: Tue May 22 09:28:38 2012
New Revision: 187765

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187765
Log:
2012-05-22  Richard Guenther  <rguenther@suse.de>

    PR middle-end/51071
    * gcc.dg/torture/pr51071-2.c: New testcase.

Added:
    branches/gcc-4_7-branch/gcc/testsuite/gcc.dg/torture/pr51071-2.c
Modified:
    branches/gcc-4_7-branch/gcc/testsuite/ChangeLog


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
                   ` (7 preceding siblings ...)
  2012-05-22 10:07 ` rguenth at gcc dot gnu.org
@ 2012-05-22 10:15 ` rguenth at gcc dot gnu.org
  2012-05-22 10:19 ` rguenth at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-05-22 10:15 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-05-22 09:24:10 UTC ---
Backported with a new testcase.


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

* [Bug middle-end/51071] [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513
  2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
                   ` (8 preceding siblings ...)
  2012-05-22 10:15 ` rguenth at gcc dot gnu.org
@ 2012-05-22 10:19 ` rguenth at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-05-22 10:19 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-05-22 09:35:40 UTC ---
Author: rguenth
Date: Tue May 22 09:35:32 2012
New Revision: 187768

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187768
Log:
2012-05-22  Richard Guenther  <rguenther@suse.de>

    PR middle-end/51071
    * gcc.dg/torture/pr51071-2.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.dg/torture/pr51071-2.c
Modified:
    trunk/gcc/testsuite/ChangeLog


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

end of thread, other threads:[~2012-05-22 10:19 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-09 21:52 [Bug middle-end/51071] New: [4.7 Regression] ICE in gimple_has_side_effects, at gimple.c:2513 belyshev at depni dot sinp.msu.ru
2011-11-10 10:59 ` [Bug middle-end/51071] " rguenth at gcc dot gnu.org
2011-11-10 12:25 ` rguenth at gcc dot gnu.org
2011-11-10 12:25 ` rguenth at gcc dot gnu.org
2012-05-18 15:08 ` pageexec at freemail dot hu
2012-05-21 10:10 ` rguenth at gcc dot gnu.org
2012-05-21 12:40 ` pageexec at freemail dot hu
2012-05-22 10:05 ` rguenth at gcc dot gnu.org
2012-05-22 10:07 ` rguenth at gcc dot gnu.org
2012-05-22 10:15 ` rguenth at gcc dot gnu.org
2012-05-22 10:19 ` 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).