diff options
author | Richard Guenther <rguenther@suse.de> | 2009-05-02 17:50:21 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2009-05-02 17:50:21 +0000 |
commit | 85e59f3a2dc95c9180e59fc38e4004ba52a62223 (patch) | |
tree | f2f2c3594fa344d101ce44382e9b1c8a2796ea49 /gcc | |
parent | 4636b850f65b40e23bb6f6c7db00adfdab2602da (diff) | |
download | gcc-85e59f3a2dc95c9180e59fc38e4004ba52a62223.zip gcc-85e59f3a2dc95c9180e59fc38e4004ba52a62223.tar.gz gcc-85e59f3a2dc95c9180e59fc38e4004ba52a62223.tar.bz2 |
re PR java/39940 (failure in jc1 on i686-apple-darwin9 host)
2009-05-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/39940
* tree-ssa-pre.c (eliminate): Make sure we may propagate before
doing so.
From-SVN: r147065
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-ssa-pre.c | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d05e7cb..0bba7cf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2009-05-02 Richard Guenther <rguenther@suse.de> + PR tree-optimization/39940 + * tree-ssa-pre.c (eliminate): Make sure we may propagate before + doing so. + +2009-05-02 Richard Guenther <rguenther@suse.de> + PR middle-end/40001 * tree-ssa.c (execute_update_addresses_taken): Properly check if we can mark a variable DECL_GIMPLE_REG_P. diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index 11b88ed..3273c19 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -4215,7 +4215,9 @@ eliminate (void) /* If there is a single use only, propagate the equivalency instead of keeping the copy. */ if (TREE_CODE (lhs) == SSA_NAME - && single_imm_use (lhs, &use_p, &use_stmt)) + && single_imm_use (lhs, &use_p, &use_stmt) + && may_propagate_copy (USE_FROM_PTR (use_p), + gimple_assign_rhs1 (stmt))) { SET_USE (use_p, gimple_assign_rhs1 (stmt)); update_stmt (use_stmt); |