------- Comment #10 from law at redhat dot com 2006-03-24 23:23 ------- Subject: Re: [4.2 Regression] escaping global variables cause 'definition follows use' error.
On Fri, 2006-03-24 at 03:03 +0000, pinskia at gcc dot gnu dot org wrote: > > ------- Comment #2 from pinskia at gcc dot gnu dot org 2006-03-24 03:03 > ------- > Caused by: > 2006-03-20 Jeff Law <[EMAIL PROTECTED]> > > * tree-pass.h (pass_phi_only_copy_prop): Delete. > (pass_phi_only_cprop): Declare. > * passes.c (init_optimization_passes): Replace pass_phi_only_copy_prop > with phi_only_cprop > * tree-ssa-dom.c (degenerate_phi_result): New function. > (remove_stmt_or_phi, get_lhs_or_phi_result): Likewise. > (get_rhs_or_phi_arg, propagate_rhs_into_lhs): Likewise. > (eliminate_const_or_copy, eliminate_degenerate_phis_1): Likewise. > (eliminate_degenerate_phis): Likewise. > (pass_phi_only_cprop): New pass descriptor. > * tree-ssa-copy.c (init_copy_prop): Lose PHIS_ONLY argument and > support code. Callers updated. > (execute_copy_prop, do_copy_prop): Likewise and corresponding changes. > (store_copy_prop): Likewise. > (do_phi_only_copy_prop, pass_phi_only_copy_prop): Remove. Fixed by not calling update_stmt directly, but instead letting mark_new_vars_to_rename call update_stmt at the appropriate time. Bootstrapped and regression tested on i686-pc-linux-gnu. Onward to Ada... > > ------- Comment #11 from law at redhat dot com 2006-03-24 23:23 ------- Created an attachment (id=11117) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11117&action=view) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26840