[PATCH] Re: reg_dead_notes!=0: New abort in haifa scheduler in latest CVS

Franz Sirl Franz.Sirl-kernel@lauterbach.com
Thu Apr 30 01:58:00 GMT 1998


This abort was introduced by this patch to haifa-sched.c from Jeff:
----------------------------
revision 1.39
date: 1998/04/16 22:00:09;  author: law;  state: Exp;  lines: +254 -236
        * haifa-sched.c (build_control_flow): Accept raw data as inputs
        instead of computing it locally.  Callers changed.
        (find_rgns): Several new arguments.  Callers changed.
        Generally clean up and comment better.  Use dominators to
        identify reducible loops.  Convert some flag arrays to bitmaps.
        Convert most of the code to work on pred/succ lists instead of
        an edge table.  Add comments for future improvements.
        (schedule_insns): Allocate temporary tables for flow data, call
        routines to compute flow data and pass it along to children as
        arguments.
        (debug_control_flow): Delete.  Use dump_bb_data instead.
General cleanup + fix a bug or two.
----------------------------

This little patch reversion seems to cure the abort:
Index: haifa-sched.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/haifa-sched.c,v
retrieving revision 1.39
diff -u -r1.39 haifa-sched.c
--- haifa-sched.c       1998/04/16 22:00:09     1.39
+++ haifa-sched.c       1998/04/29 22:08:43
@@ -1647,7 +1647,7 @@
          if (no_loops)
            {
              for (j = 0; j < n_basic_blocks; j++)
-               if (num_succs[j] == 0)
+               if (out_edges[j] == 0)
                  {
                    queue[++tail] = j;
                    SET_BIT (in_queue, j);

But I really don't know what I'm doing here ;-), this is simply a
try-and-error patch.
Please have a look at it. The .i file to reproduce it (on
powerpc-unknown-linux-gnu) is
< http://homepages.munich.netsurf.de/Franz.Sirl/misc/super.i >.

Bye,
Franz.

At 02:25 20.04.98 , Franz Sirl wrote:
>Hi,
>
>with the latest CVS a new bug showed up. cc1 aborts in line 7508 of
>haifa-sched.c/schedule_region(). The comment there suggests that the bug is
>elsewhere...
>
>On request I can provide a .i file (quite large) or try to strip down it to
>a small testcase, but since it's a new bug introduced during the last week,
>it eventually easy to find ;-).
>
>Bye,
>Franz.
> 



More information about the Gcc-bugs mailing list