From 7c00d1fe83e896e59dd6f445f0da11232ba0803f Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Wed, 18 Mar 1998 13:41:50 +0000 Subject: expr.c (expand_expr, [...]): If have conditional move, don't use ORIGINAL_TARGET unless REG. Wed Mar 18 13:42:01 1998 Richard Kenner * expr.c (expand_expr, case COND_EXPR): If have conditional move, don't use ORIGINAL_TARGET unless REG. From-SVN: r18671 --- gcc/expr.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gcc/expr.c') diff --git a/gcc/expr.c b/gcc/expr.c index 8edc49e..178f4f1 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -6765,6 +6765,11 @@ expand_expr (exp, target, tmode, modifier) && REGNO (original_target) >= FIRST_PSEUDO_REGISTER && original_target == var_rtx (singleton))) && GET_MODE (original_target) == mode +#ifdef HAVE_conditional_move + && (! can_conditionally_move_p (mode) + || GET_CODE (original_target) == REG + || TREE_ADDRESSABLE (type)) +#endif && ! (GET_CODE (original_target) == MEM && MEM_VOLATILE_P (original_target))) temp = original_target; -- cgit v1.1