This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

fix compile/20010519-1.f regression


Yet another verify_flow_info abort.

This time, local-alloc replaces a register with its REG_EQUIV
label, turning an indirect jump into a direct jump.  We fail
to clear the EDGE_ABNORMAL bit, which leads to the sanity check
abort.

Fixed thus.


r~


        * toplev.c (rest_of_compilation): Call purge_all_dead_edges
        if rebuild_label_notes_after_reload.

Index: toplev.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/toplev.c,v
retrieving revision 1.591
diff -c -p -d -r1.591 toplev.c
*** toplev.c	2002/03/11 21:49:11	1.591
--- toplev.c	2002/03/12 03:10:39
*************** rest_of_compilation (decl)
*** 3225,3230 ****
--- 3225,3231 ----
        timevar_push (TV_JUMP);
  
        rebuild_jump_labels (insns);
+       purge_all_dead_edges (0);
  
        timevar_pop (TV_JUMP);
      }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]