(untyped_call): Make it return a complex double.
authorRichard Kenner <kenner@gcc.gnu.org>
Tue, 25 Apr 1995 23:10:10 +0000 (19:10 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Tue, 25 Apr 1995 23:10:10 +0000 (19:10 -0400)
From-SVN: r9464

gcc/config/i386/i386.md

index e815346ab4bfcac842a2392776b4d541c86c99c0..2d91e767cdd4718ba47ed50477d5e21f909daeea 100644 (file)
 {
   int i;
 
-  emit_call_insn (gen_call (operands[0], const0_rtx, NULL, const0_rtx));
+  /* In order to give reg-stack an easier job in validating two
+     coprocessor registers as containing a possible return value,
+     simply pretend the untyped call returns a complex long double
+     value.  */
+  emit_call_insn (TARGET_80387
+                  ? gen_call_value (gen_rtx (REG, XCmode, FIRST_FLOAT_REG),
+                                 operands[0], const0_rtx)
+                  : gen_call (operands[0], const0_rtx));
 
   for (i = 0; i < XVECLEN (operands[2], 0); i++)
     {