This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Do not recurse walking the CFG in phiprop
- From: Tobias Burnus <burnus at net-b dot de>
- To: Richard Guenther <rguenther at suse dot de>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 21 Apr 2009 08:58:00 +0200
- Subject: Re: [PATCH] Do not recurse walking the CFG in phiprop
- References: <alpine.LNX.2.00.0904201554270.4801@zhemvz.fhfr.qr>
Richard Guenther wrote:
> As suggested by Paolo this fixes/generalizes get_all_dominated_blocks
> and uses it to avoid recursion in the CFG walk in phiprop.
>
> Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk.
Your patch unfortunately caused:
[Bug middle-end/39827] [4.5 Regression] ICE (segfault) when compiling
gcc/varasm.c (in notice_global_symbol)
For the valgrind output, see PR.
Tobias
> 2009-04-20 Richard Guenther <rguenther@suse.de>
>
> * basic-block.h (get_all_dominated_blocks): Declare.
> * dominance.c (get_all_dominated_blocks): New function.
> * tree-cfg.c (get_all_dominated_blocks): Remove.
> (remove_edge_and_dominated_blocks): Adjust.
> * tree-ssa-phiprop.c (tree_ssa_phiprop_1): Fold in ...
> (tree_ssa_phiprop): ... here. Use get_all_dominated_blocks
> instead of recursing.