Bootstrap and testing in progress. Richard.
2016-11-25 Richard Biener <rguent...@suse.de> * gimple-fold.c (fold_stmt_1): Check may_propagate_copy before valueizing return stmts. Index: gcc/gimple-fold.c =================================================================== --- gcc/gimple-fold.c (revision 242864) +++ gcc/gimple-fold.c (working copy) @@ -4414,7 +4414,8 @@ fold_stmt_1 (gimple_stmt_iterator *gsi, if (ret && TREE_CODE (ret) == SSA_NAME && valueize) { tree val = valueize (ret); - if (val && val != ret) + if (val && val != ret + && may_propagate_copy (ret, val)) { gimple_return_set_retval (ret_stmt, val); changed = true;