expr.c (expand_expr, [...]): If have conditional move, don't use ORIGINAL_TARGET unless REG.

Wed Mar 18 13:42:01 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        * expr.c (expand_expr, case COND_EXPR): If have conditional move,
        don't use ORIGINAL_TARGET unless REG.

From-SVN: r18671
This commit is contained in:
Richard Kenner 1998-03-18 13:41:50 +00:00 committed by Richard Henderson
parent 343665b9a1
commit 7c00d1fe83
2 changed files with 10 additions and 0 deletions

View file

@ -1,3 +1,8 @@
Wed Mar 18 13:42:01 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* expr.c (expand_expr, case COND_EXPR): If have conditional move,
don't use ORIGINAL_TARGET unless REG.
Wed Mar 18 16:53:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
* netbsd.h (ASM_OUTPUT_ALIGN): Redefine.

View file

@ -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;