From: Nick Clifton Date: Fri, 11 Jan 2002 16:15:36 +0000 (+0000) Subject: Correct test of 'remainder' and 'subtargets'. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=96ae8197d279fbb1d801ae88ff36ca963b5e741a;p=gcc.git Correct test of 'remainder' and 'subtargets'. From-SVN: r48776 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6e68eab5681..bad4bcb3bd8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-01-11 Nick Clifton + + * config/arm/arm.c (arm_gen_constant): Correct test of 'remainder' + and 'subtargets'. + 2002-01-11 Andreas Jaeger , Brad Lucier diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 76ce21c6b5a..7cad98b07e6 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -1631,15 +1631,15 @@ arm_gen_constant (code, mode, val, target, source, subtargets, generate) if (code == SET || code == MINUS) { new_src = (subtargets ? gen_reg_rtx (mode) : target); - if (can_invert) + if (can_invert && code != MINUS) temp1 = ~temp1; } else { - if (remainder || !subtargets) - new_src = target; - else + if (remainder && subtargets) new_src = gen_reg_rtx (mode); + else + new_src = target; if (can_invert) temp1 = ~temp1; else if (can_negate)