public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
@ 2014-02-19  5:23 dimhen at gmail dot com
  2014-02-19  6:53 ` [Bug rtl-optimization/60268] " jakub at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: dimhen at gmail dot com @ 2014-02-19  5:23 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 60268
           Summary: [4.9 regression] ICE: in rank_for_schedule, at
                    haifa-sched.c:2557
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dimhen at gmail dot com

r207791 PASS
r207850 FAIL

$ cat x.i
void f()
{
  int i = 0;
  void *p = 0;
}
$ /usr/local/gcc_current/bin/gcc -fpreprocessed -O0 -flive-range-shrinkage -c
x.i
x.i: In function 'f':
x.i:5:1: internal compiler error: in rank_for_schedule, at haifa-sched.c:2557
 }
 ^
0x13c6f41 rank_for_schedule
    /home/dimhen/src/gcc_current/gcc/haifa-sched.c:2557
0x13c7895 swap_sort
    /home/dimhen/src/gcc_current/gcc/haifa-sched.c:2714
0x13c7895 ready_sort(ready_list*)
    /home/dimhen/src/gcc_current/gcc/haifa-sched.c:2926
0x13d0727 schedule_block(basic_block_def**, void*)
    /home/dimhen/src/gcc_current/gcc/haifa-sched.c:6096
0xa1421a schedule_region
    /home/dimhen/src/gcc_current/gcc/sched-rgn.c:3080
0xa1421a schedule_insns
    /home/dimhen/src/gcc_current/gcc/sched-rgn.c:3416
0xa1461b schedule_insns
    /home/dimhen/src/gcc_current/gcc/sched-rgn.c:3401
0xa1461b rest_of_handle_live_range_shrinkage
    /home/dimhen/src/gcc_current/gcc/sched-rgn.c:3614
0xa1461b execute
    /home/dimhen/src/gcc_current/gcc/sched-rgn.c:3704
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.


Fedora 20/x64

$ /usr/local/gcc_current/bin/gcc -v
Using built-in specs.
COLLECT_GCC=/usr/local/gcc_current/bin/gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc_current/libexec/gcc/x86_64-unknown-linux-gnu/4.9.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /home/dimhen/src/gcc_current/configure
--prefix=/usr/local/gcc_current --enable-checking=yes,df,fold,rtl,tree
--enable-languages=c,c++,lto --enable-plugin --with-tune=native
--with-arch=native --enable-version-specific-runtime-libs --enable-static
--disable-multilib
Thread model: posix
gcc version 4.9.0 20140218 (experimental) [trunk revision 207850] (GCC)


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

* [Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
  2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
@ 2014-02-19  6:53 ` jakub at gcc dot gnu.org
  2014-02-19  7:03 ` jakub at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-19  6:53 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2014-02-19
                 CC|                            |abel at gcc dot gnu.org,
                   |                            |jakub at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Started with r207832.


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

* [Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
  2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
  2014-02-19  6:53 ` [Bug rtl-optimization/60268] " jakub at gcc dot gnu.org
@ 2014-02-19  7:03 ` jakub at gcc dot gnu.org
  2014-02-19  9:08 ` rguenth at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-19  7:03 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So perhaps:
--- gcc/haifa-sched.c    2014-02-18 08:18:53.045024428 +0100
+++ gcc/haifa-sched.c    2014-02-19 07:58:38.191381581 +0100
@@ -2550,7 +2550,7 @@ rank_for_schedule (const void *x, const
     return INSN_LUID (tmp) - INSN_LUID (tmp2);
     }

-  if (live_range_shrinkage_p)
+  if (live_range_shrinkage_p && sched_pressure != SCHED_PRESSURE_NONE)
     {
       /* Don't use SCHED_PRESSURE_MODEL -- it results in much worse
      code.  */

BTW, why
      if (sched_pressure != SCHED_PRESSURE_NONE)
        free_global_sched_pressure_data ();
when free_global_sched_pressure_data () contains the same guard and thus could
be called unconditionally?


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

* [Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
  2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
  2014-02-19  6:53 ` [Bug rtl-optimization/60268] " jakub at gcc dot gnu.org
  2014-02-19  7:03 ` jakub at gcc dot gnu.org
@ 2014-02-19  9:08 ` rguenth at gcc dot gnu.org
  2014-02-19  9:31 ` abel at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-02-19  9:08 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.9.0


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

* [Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
  2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
                   ` (2 preceding siblings ...)
  2014-02-19  9:08 ` rguenth at gcc dot gnu.org
@ 2014-02-19  9:31 ` abel at gcc dot gnu.org
  2014-02-20 11:59 ` abel at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-19  9:31 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="UTF-8", Size: 7144 bytes --]

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

Andrey Belevantsev <abel at gcc dot gnu.org> changed:

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

--- Comment #3 from Andrey Belevantsev <abel at gcc dot gnu.org> ---
I'm out of office today, so I'll have a look properly tomorrow, but...

(In reply to Jakub Jelinek from comment #2)
> So perhaps:
> --- gcc/haifa-sched.c	2014-02-18 08:18:53.045024428 +0100
> +++ gcc/haifa-sched.c	2014-02-19 07:58:38.191381581 +0100
> @@ -2550,7 +2550,7 @@ rank_for_schedule (const void *x, const
>  	return INSN_LUID (tmp) - INSN_LUID (tmp2);
>      }
>  
> -  if (live_range_shrinkage_p)
> +  if (live_range_shrinkage_p && sched_pressure != SCHED_PRESSURE_NONE)
>      {
>        /* Don't use SCHED_PRESSURE_MODEL -- it results in much worse
>  	 code.  */

...  the fired assert below this code means that we have turned off
sched-pressure on the new region (unexpectedly to live_range_shrinkage) and I'd
like to know how this region was added.  I guess I missed some entry point
within the new scheduler code when fixing the previous PR.

> 
> BTW, why
>       if (sched_pressure != SCHED_PRESSURE_NONE)
>         free_global_sched_pressure_data ();
> when free_global_sched_pressure_data () contains the same guard and thus
> could be called unconditionally?

Pilot error while being over cautious, I will simplify that too.
>From gcc-bugs-return-444182-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Feb 19 09:35:21 2014
Return-Path: <gcc-bugs-return-444182-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 29872 invoked by alias); 19 Feb 2014 09:35:21 -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 29197 invoked by uid 48); 19 Feb 2014 09:35:14 -0000
From: "manu at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c/59193] Unused postfix operator temporaries
Date: Wed, 19 Feb 2014 09:35: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: unknown
X-Bugzilla-Keywords:
X-Bugzilla-Severity: minor
X-Bugzilla-Who: manu at gcc dot gnu.org
X-Bugzilla-Status: REOPENED
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-59193-4-JbiXgsyN6R@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-59193-4@http.gcc.gnu.org/bugzilla/>
References: <bug-59193-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-02/txt/msg01939.txt.bz2
Content-length: 1097

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

Manuel López-Ibáñez <manu at gcc dot gnu.org> changed:

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

--- Comment #5 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
(In reply to Max TenEyck Woodbury from comment #4)
> Since there are hundreds, if not thousands of instances of this defect in the
> GCC code and there is no urgency in correcting these defects, this bug will
> only
> get resolved slowly.  Closing it for invalid reasons does the community a
> disservice.

Are you planning to help in fixing these and other problems? If so, please
start the copyright assignment process:
http://gcc.gnu.org/contribute.html#legal

Then, to get your feet wet, it would be better to start with some
uncontroversial bugs like: PR25801, or PR55080, or PR57622 or PR52347.

I have a long list of easy hacks that would help a lot GCC and its users.
>From gcc-bugs-return-444181-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Feb 19 09:35:16 2014
Return-Path: <gcc-bugs-return-444181-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 29234 invoked by alias); 19 Feb 2014 09:35:15 -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 29170 invoked by uid 48); 19 Feb 2014 09:35:12 -0000
From: "jakub at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/60267] ICE in c_pp_lookup_pragma, at c-family/c-pragma.c:1232; ICE in tsubst_copy, at cp/pt.c:12887
Date: Wed, 19 Feb 2014 09:35: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.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: jakub at gcc dot gnu.org
X-Bugzilla-Status: ASSIGNED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: jakub at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status cf_reconfirmed_on assigned_to everconfirmed attachments.created
Message-ID: <bug-60267-4-nEHLb6N0OB@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-60267-4@http.gcc.gnu.org/bugzilla/>
References: <bug-60267-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: 2014-02/txt/msg01938.txt.bz2
Content-length: 784

http://gcc.gnu.org/bugzilla/show_bug.cgi?id`267

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2014-02-19
           Assignee|unassigned at gcc dot gnu.org      |jakub at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 32168
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id2168&actioníit
gcc49-pr60267-2.patch

Untested fix for the tsubst ICE.  Of course, without preprocessed testcase I
can't be sure if this patch fixed it.


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

* [Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
  2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
                   ` (3 preceding siblings ...)
  2014-02-19  9:31 ` abel at gcc dot gnu.org
@ 2014-02-20 11:59 ` abel at gcc dot gnu.org
  2014-02-24  5:57 ` abel at gcc dot gnu.org
  2014-02-24  6:03 ` abel at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-20 11:59 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Andrey Belevantsev <abel at gcc dot gnu.org> ---

(In reply to Jakub Jelinek from comment #2)

I forgot the single block regions case, so the nr_regions_initial init should
be moved to the bottom of sched_rgn_init.

The check before free_global_sched_pressure_data can be moved before if() like
in the below patch, this way we do not call it each time after we have reset
sched_pressure to NONE for the new regions, or I can drop it altogether, as you
prefer.

diff --git a/gcc/sched-rgn.c b/gcc/sched-rgn.c
index 0573b6a..dc6fa16 100644
--- a/gcc/sched-rgn.c
+++ b/gcc/sched-rgn.c
@@ -1067,7 +1067,6 @@ haifa_find_rgns (void)
        BLOCK_TO_BB (bb->index) = 0;
       }

-  nr_regions_initial = nr_regions;
   free (max_hdr);
   free (degree);
   free (stack);
@@ -2997,10 +2996,10 @@ schedule_region (int rgn)

   /* Do not support register pressure sensitive scheduling for the new regions
      as we don't update the liveness info for them.  */
-  if (rgn >= nr_regions_initial)
+  if (sched_pressure != SCHED_PRESSURE_NONE
+      && rgn >= nr_regions_initial)
     {
-      if (sched_pressure != SCHED_PRESSURE_NONE)
-       free_global_sched_pressure_data ();
+      free_global_sched_pressure_data ();
       sched_pressure = SCHED_PRESSURE_NONE;
     }

@@ -3166,6 +3165,7 @@ sched_rgn_init (bool single_blocks_p)

   RGN_BLOCKS (nr_regions) = (RGN_BLOCKS (nr_regions - 1) +
                             RGN_NR_BLOCKS (nr_regions - 1));
+  nr_regions_initial = nr_regions;
 }

 /* Free data structures for region scheduling.  */


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

* [Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
  2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
                   ` (4 preceding siblings ...)
  2014-02-20 11:59 ` abel at gcc dot gnu.org
@ 2014-02-24  5:57 ` abel at gcc dot gnu.org
  2014-02-24  6:03 ` abel at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-24  5:57 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Andrey Belevantsev <abel at gcc dot gnu.org> ---
Author: abel
Date: Mon Feb 24 05:57:02 2014
New Revision: 208066

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

2014-02-24  Andrey Belevantsev  <abel@ispras.ru>

    PR rtl-optimization/60268
    * sched-rgn.c (haifa_find_rgns): Move the nr_regions_initial variable
    initialization to ...
    (sched_rgn_init): ... here.
    (schedule_region): Check for SCHED_PRESSURE_NONE earlier.

testsuite/

2014-02-24  Andrey Belevantsev  <abel@ispras.ru>

    PR rtl-optimization/60268
    * gcc.c-torture/compile/pr60268.c: New test.

Added:
    trunk/gcc/testsuite/gcc.c-torture/compile/pr60268.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/sched-rgn.c
    trunk/gcc/testsuite/ChangeLog


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

* [Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557
  2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
                   ` (5 preceding siblings ...)
  2014-02-24  5:57 ` abel at gcc dot gnu.org
@ 2014-02-24  6:03 ` abel at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-24  6:03 UTC (permalink / raw)
  To: gcc-bugs

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

Andrey Belevantsev <abel at gcc dot gnu.org> changed:

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

--- Comment #7 from Andrey Belevantsev <abel at gcc dot gnu.org> ---
Fixed on trunk.


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

end of thread, other threads:[~2014-02-24  6:03 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-19  5:23 [Bug rtl-optimization/60268] New: [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557 dimhen at gmail dot com
2014-02-19  6:53 ` [Bug rtl-optimization/60268] " jakub at gcc dot gnu.org
2014-02-19  7:03 ` jakub at gcc dot gnu.org
2014-02-19  9:08 ` rguenth at gcc dot gnu.org
2014-02-19  9:31 ` abel at gcc dot gnu.org
2014-02-20 11:59 ` abel at gcc dot gnu.org
2014-02-24  5:57 ` abel at gcc dot gnu.org
2014-02-24  6:03 ` abel 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).