From 0865c6314ef0542cf915f1a07e4ad43a9cd0d2e9 Mon Sep 17 00:00:00 2001 From: Geoffrey Keating Date: Mon, 2 Aug 1999 15:44:50 +0000 Subject: Unroll my commit of 1999/08/01 16:14:58, there was a communications mixup about its status. From-SVN: r28403 --- gcc/optabs.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gcc/optabs.c') diff --git a/gcc/optabs.c b/gcc/optabs.c index bad2776..2b9091b 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -857,12 +857,12 @@ expand_binop (mode, binoptab, op0, op1, target, unsignedp, methods) /* In case the insn wants input operands in modes different from the result, convert the operands. */ - if ((GET_MODE (op0) != VOIDmode || GET_CODE (op0) == CONST_INT) + if (GET_MODE (op0) != VOIDmode && GET_MODE (op0) != mode0 && mode0 != VOIDmode) xop0 = convert_to_mode (mode0, xop0, unsignedp); - if ((GET_MODE (xop1) != VOIDmode || GET_CODE (xop1) == CONST_INT) + if (GET_MODE (xop1) != VOIDmode && GET_MODE (xop1) != mode1 && mode1 != VOIDmode) xop1 = convert_to_mode (mode1, xop1, unsignedp); @@ -4231,7 +4231,7 @@ expand_fix (to, from, unsignedp) NULL_RTX, 0, OPTAB_LIB_WIDEN); expand_fix (to, target, 0); target = expand_binop (GET_MODE (to), xor_optab, to, - GEN_INT ((HOST_WIDE_INT) -1 << (bitsize - 1)), + GEN_INT ((HOST_WIDE_INT) 1 << (bitsize - 1)), to, 1, OPTAB_LIB_WIDEN); if (target != to) -- cgit v1.1