(call, call_value): Don't use call_operand, since checking for
authorRichard Kenner <kenner@gcc.gnu.org>
Wed, 14 Oct 1992 11:19:23 +0000 (07:19 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Wed, 14 Oct 1992 11:19:23 +0000 (07:19 -0400)
recursive calls at this point is not safe.

From-SVN: r2458

gcc/config/a29k/a29k.md

index c99fa01dce182ea0f8ed8a42af77593fb04dacfb..316baa48226fd64af6cf3f3a7aeeadc854397dec 100644 (file)
   if (GET_CODE (operands[0]) != MEM)
     abort ();
 
-  if (! call_operand (XEXP (operands[0], 0), SImode))
+  /* We tell here whether this is a recursive call, since this insn may
+     later be inlined into another function.  */
+  if (! TARGET_SMALL_MEMORY
+      && GET_CODE (XEXP (operands[0], 0)) == SYMBOL_REF)
     operands[0] = gen_rtx (MEM, SImode,
                           force_reg (Pmode, XEXP (operands[0], 0)));
 
   if (GET_CODE (operands[1]) != MEM)
     abort ();
 
-  if (! call_operand (XEXP (operands[1], 0), SImode))
+  /* We tell here whether this is a recursive call, since this insn may
+     later be inlined into another function.  */
+  if (! TARGET_SMALL_MEMORY
+      && GET_CODE (XEXP (operands[1], 0)) == SYMBOL_REF)
     operands[1] = gen_rtx (MEM, SImode,
                           force_reg (Pmode, XEXP (operands[1], 0)));