As said in the other mail esra corrupts ealias info by eventually adding new PHI nodes but at the same time doesn't benefit from points-to info. Also esra may improve PTA precision by exposing more SSA names.
Bootstrapped on x86_64-unknown-linux-gnu, testing in progres. Queued for stage1. Richard. 2014-02-12 Richard Biener <rguent...@suse.de> * passes.def: Move early points-to after early SRA. Index: gcc/passes.def =================================================================== --- gcc/passes.def (revision 207725) +++ gcc/passes.def (working copy) @@ -68,10 +68,10 @@ along with GCC; see the file COPYING3. /* After CCP we rewrite no longer addressed locals into SSA form if possible. */ NEXT_PASS (pass_forwprop); + NEXT_PASS (pass_sra_early); /* pass_build_ealias is a dummy pass that ensures that we execute TODO_rebuild_alias at this point. */ NEXT_PASS (pass_build_ealias); - NEXT_PASS (pass_sra_early); NEXT_PASS (pass_fre); NEXT_PASS (pass_copy_prop); NEXT_PASS (pass_merge_phi);