------- Comment #1 from steven at gcc dot gnu dot org  2007-03-13 18:55 -------
I believe this is the proper fix:

Index: cfglayout.c
===================================================================
--- cfglayout.c (revision 122858)
+++ cfglayout.c (working copy)
@@ -697,7 +697,6 @@ fixup_reorder_chain (void)
 #ifdef ENABLE_CHECKING
   verify_insn_chain ();
 #endif
-  delete_dead_jumptables ();

   /* Now add jumps and labels as needed to match the blocks new
      outgoing edges.  */
@@ -1193,6 +1192,9 @@ cfg_layout_finalize (void)
     fixup_fallthru_exit_predecessor ();
   fixup_reorder_chain ();

+  rebuild_jump_labels (get_insns ());
+  delete_dead_jumptables ();
+
 #ifdef ENABLE_CHECKING
   verify_insn_chain ();
 #endif


-- 


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

Reply via email to