aboutsummaryrefslogtreecommitdiff
path: root/gcc/optabs.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2005-07-30 00:22:41 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2005-07-29 22:22:41 +0000
commit3bc751bdfeb8cdd76c9a0214f0f9da6b440b590c (patch)
tree7422c6f520abc7c3130ef5743f9e08959e3f3236 /gcc/optabs.c
parent0bab7d3f439709b993ee0d87316a37c78d50e266 (diff)
downloadgcc-3bc751bdfeb8cdd76c9a0214f0f9da6b440b590c.zip
gcc-3bc751bdfeb8cdd76c9a0214f0f9da6b440b590c.tar.gz
gcc-3bc751bdfeb8cdd76c9a0214f0f9da6b440b590c.tar.bz2
expr.c (expand_expr_real_1): Do not load mem targets into register.
* expr.c (expand_expr_real_1): Do not load mem targets into register. * i386.c (ix86_fixup_binary_operands): Likewise. (ix86_expand_unary_operator): Likewise. (ix86_expand_fp_absneg_operator): Likewise. * optabs.c (expand_vec_cond_expr): Validate dest. From-SVN: r102570
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r--gcc/optabs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 2f981ab..466a56c 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -5475,7 +5475,7 @@ expand_vec_cond_expr (tree vec_cond_expr, rtx target)
if (icode == CODE_FOR_nothing)
return 0;
- if (!target)
+ if (!target || !insn_data[icode].operand[0].predicate (target, mode))
target = gen_reg_rtx (mode);
/* Get comparison rtx. First expand both cond expr operands. */