From 57e1b65caaf247d5ac9022ff20586c7d43a1931c Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Wed, 22 Feb 1995 07:53:15 -0500 Subject: [PATCH] (output_move_double): Let split_double extract any constant in op 1; take size from op 0. From-SVN: r9029 --- gcc/config/i386/i386.c | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 2921d9f2341..2182a912aa7 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -419,7 +419,7 @@ output_move_double (operands) rtx xops[2]; rtx addreg0 = 0, addreg1 = 0; int dest_overlapped_low = 0; - int size = GET_MODE_SIZE (GET_MODE (operands[1])); + int size = GET_MODE_SIZE (GET_MODE (operands[0])); middlehalf[0] = 0; middlehalf[1] = 0; @@ -575,20 +575,7 @@ output_move_double (operands) else if (optype1 == OFFSOP) latehalf[1] = adj_offsettable_operand (operands[1], 4); else if (optype1 == CNSTOP) - { - if (GET_CODE (operands[1]) == CONST_DOUBLE) - split_double (operands[1], &operands[1], &latehalf[1]); - else if (CONSTANT_P (operands[1])) - { - /* ??? jrv: Can this really happen? A DImode constant - that isn't a CONST_DOUBLE? */ - if (GET_CODE (operands[1]) == CONST_INT - && INTVAL (operands[1]) < 0) - latehalf[1] = constm1_rtx; - else - latehalf[1] = const0_rtx; - } - } + split_double (operands[1], &operands[1], &latehalf[1]); else latehalf[1] = operands[1]; } -- 2.30.2