authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 13 Oct 1998 23:58:34 +0000 (23:58 +0000)
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 13 Oct 1998 23:58:34 +0000 (23:58 +0000)
        * function.c (purge_addressof_1): Force the first argument of a
        CALL insn to memory.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23071 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/function.c

index 3904b86..b209b13 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);