From 803090c4274d6ab45674cd94dda7b899aea10b33 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sat, 29 Aug 1992 22:38:56 -0400 Subject: [PATCH] (emit_library_call): Pass correct number of args to convert_to_mode. (emit_block_move): Eliminate unnecessary test against HOST_BITS_PER_WIDE_INT. From-SVN: r1994 --- gcc/expr.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gcc/expr.c b/gcc/expr.c index 17a8fb6ed68..f727956dd12 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -1189,7 +1189,10 @@ emit_block_move (x, y, size, align) enum insn_code code = movstr_optab[(int) mode]; if (code != CODE_FOR_nothing - && GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT + /* We don't need MODE to be narrower than BITS_PER_HOST_WIDE_INT + here because if SIZE is less than the mode mask, as it is + returned by the macro, it will definately be less than the + actual mode mask. */ && (unsigned) INTVAL (size) <= GET_MODE_MASK (mode) && (insn_operand_predicate[(int) code][0] == 0 || (*insn_operand_predicate[(int) code][0]) (x, BLKmode)) @@ -1887,7 +1890,7 @@ emit_library_call (va_alist) Pass it as a double instead. */ #ifdef LIBGCC_NEEDS_DOUBLE if (LIBGCC_NEEDS_DOUBLE && mode == SFmode) - val = convert_to_mode (DFmode, val), mode = DFmode; + val = convert_to_mode (DFmode, val, 0), mode = DFmode; #endif /* There's no need to call protect_from_queue, because -- 2.30.2