This is the mail archive of the gcc-bugs@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]

[Bug optimization/11631] [3.4/3.3-hammer regression] zsh/kernel miscompilation


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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



------- Additional Comments From rakdver at atrey dot karlin dot mff dot cuni dot cz  2003-07-24 18:49 -------
Subject: Re:  [3.4/3.3-hammer regression] zsh/kernel miscompilation

The problem is with the infinite loop.  I am not really sure where
things get wrong (it happens inside lcm.c, which I take as a blackbox),
but this patch fixes it.  I will commit it as obvious unless it breaks
something else.

Zdenek

Changelog:
	* gcse.c (store_motion): Connect infinite loops to exit.

Index: gcse.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/gcse.c,v
retrieving revision 1.222.2.11
diff -c -3 -p -r1.222.2.11 gcse.c
*** gcse.c	25 Jun 2003 20:22:48 -0000	1.222.2.11
--- gcse.c	24 Jul 2003 18:44:54 -0000
*************** store_motion ()
*** 7681,7686 ****
--- 7681,7687 ----
    /* Now compute kill & transp vectors.  */
    build_store_vectors ();
    add_noreturn_fake_exit_edges ();
+   connect_infinite_loops_to_exit ();
  
    edge_list = pre_edge_rev_lcm (gcse_file, num_stores, transp, ae_gen,
  				st_antloc, ae_kill, &pre_insert_map,


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