(movsi): Convert a CONST_DOUBLE into a CONST_INT of the low part.
authorRichard Kenner <kenner@gcc.gnu.org>
Fri, 14 Jul 1995 22:46:08 +0000 (18:46 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Fri, 14 Jul 1995 22:46:08 +0000 (18:46 -0400)
From-SVN: r10135

gcc/config/rs6000/rs6000.md

index 549c55d7a5553f9de7158662ca2888c5344ef504..2899ecba1e2c3979d970d5f8595ffc1ad3b262da 100644 (file)
   if (GET_CODE (operands[0]) != REG)
     operands[1] = force_reg (SImode, operands[1]);
 
+  /* Convert a move of a CONST_DOUBLE into a CONST_INT */
+  if (GET_CODE (operands[1]) == CONST_DOUBLE)
+    operands[1] = GEN_INT (CONST_DOUBLE_LOW (operands[1]));
+
   if (CONSTANT_P (operands[1]) && GET_CODE (operands[1]) != CONST_INT
       && ! LEGITIMATE_CONSTANT_POOL_ADDRESS_P (operands[1]))
     {