------- 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

Reply via email to