pa.md (call define_expands): If TARGET_LONG_CALLS, then force the address of the...
authorJeff Law <law@gcc.gnu.org>
Fri, 16 Oct 1992 06:23:57 +0000 (00:23 -0600)
committerJeff Law <law@gcc.gnu.org>
Fri, 16 Oct 1992 06:23:57 +0000 (00:23 -0600)
        * pa.md (call define_expands): If TARGET_LONG_CALLS, then force
        the address of the function into a register.

From-SVN: r2486

gcc/config/pa/pa.md

index 7cdbcf1..c870e50 100644 (file)
  ""
  "
 {
-  operands[0] = gen_rtx (MEM, SImode, XEXP (operands[0], 0));
+  if (TARGET_LONG_CALLS) 
+    operands[0] = gen_rtx (MEM, SImode, 
+                 force_reg (SImode, XEXP (operands[0], 0)));
+  else
+    operands[0] = gen_rtx (MEM, SImode, XEXP (operands[0], 0));
 }")
 
 (define_insn ""
   ""
   "
 {
-  operands[1] = gen_rtx (MEM, SImode, XEXP (operands[1], 0));
+  if (TARGET_LONG_CALLS) 
+    operands[1] = gen_rtx (MEM, SImode, 
+                          force_reg (SImode, XEXP (operands[1], 0)));
+  else
+    operands[1] = gen_rtx (MEM, SImode, XEXP (operands[1], 0));
 }")
 
 (define_insn ""