aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimplify.c
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2012-01-09 15:14:19 +0000
committerAldy Hernandez <aldyh@gcc.gnu.org>2012-01-09 15:14:19 +0000
commit345ae17774bc0f8b527fa87c28ad7c6116b845bd (patch)
treef1670e405d630798297d4ba21644fe965549d789 /gcc/gimplify.c
parent2c5cbc315fad590eb2a89d46c8397fcb9b9cc2ba (diff)
downloadgcc-345ae17774bc0f8b527fa87c28ad7c6116b845bd.zip
gcc-345ae17774bc0f8b527fa87c28ad7c6116b845bd.tar.gz
gcc-345ae17774bc0f8b527fa87c28ad7c6116b845bd.tar.bz2
gimple.c (is_gimple_non_addressable): Remove.
* gimple.c (is_gimple_non_addressable): Remove. * gimple.h: Remove is_gimple_non_addressable. * gimplify.c (gimplify_modify_expr_rhs): Use is_gimple_reg instead of is_gimple_non_addressable. * trans-mem.c (expand_assign_tm): Same. From-SVN: r183015
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r--gcc/gimplify.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 5f2cbf3..b3b047a 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -4411,7 +4411,9 @@ gimplify_modify_expr_rhs (tree *expr_p, tree *from_p, tree *to_p,
/* It's OK to use the target directly if it's being
initialized. */
use_target = true;
- else if (!is_gimple_non_addressable (*to_p))
+ else if (TREE_CODE (*to_p) != SSA_NAME
+ && (!is_gimple_variable (*to_p)
+ || needs_to_live_in_memory (*to_p)))
/* Don't use the original target if it's already addressable;
if its address escapes, and the called function uses the
NRV optimization, a conforming program could see *to_p