function.c (purge_addressof_1): Force the first argument of a CALL insn to memory.
authorAndreas Schwab <schwab@issan.cs.uni-dortmund.de>
Tue, 13 Oct 1998 23:58:34 +0000 (17:58 -0600)
committerJeff Law <law@gcc.gnu.org>
Tue, 13 Oct 1998 23:58:34 +0000 (17:58 -0600)

        * function.c (purge_addressof_1): Force the first argument of a
        CALL insn to memory.

From-SVN: r23071

gcc/function.c

index 3904b86960abf61d552ec16c5592bc5ef6ce19ab..b209b131164bf10dea1e6c4764d987d8d9be1ddc 100644 (file)
@@ -2950,6 +2950,12 @@ purge_addressof_1 (loc, insn, force, store)
       purge_addressof_1 (&SET_SRC (x), insn, force, 0);
       return;
     }
+  else if (code == CALL)
+    {
+      purge_addressof_1 (&XEXP (x, 0), insn, 1, 0);
+      purge_addressof_1 (&XEXP (x, 1), insn, force, 0);
+      return;
+    }
 
   /* Scan all subexpressions. */
   fmt = GET_RTX_FORMAT (code);