(stupid_life_analysis): Check the usage information on CALL_INSNs.
authorRichard Kenner <kenner@gcc.gnu.org>
Fri, 6 May 1994 21:54:08 +0000 (17:54 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Fri, 6 May 1994 21:54:08 +0000 (17:54 -0400)
From-SVN: r7249

gcc/stupid.c

index b4b15fb3d23c63cd9e6e3604096d786e8a7e6ceb..ca9d44cc5e79dafeb933ce025f87b29ca3a9a46b 100644 (file)
@@ -214,6 +214,8 @@ stupid_life_analysis (f, nregs, file)
          for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
            if (call_used_regs[i])
              regs_live[i] = 0;
+
+         stupid_mark_refs (CALL_INSN_FUNCTION_USAGE (insn), insn);
        }
 
       /* Update which hard regs are currently live
@@ -385,10 +387,15 @@ static void
 stupid_mark_refs (x, insn)
      rtx x, insn;
 {
-  register RTX_CODE code = GET_CODE (x);
+  register RTX_CODE code;
   register char *fmt;
   register int regno, i;
 
+  if (x == 0)
+    return;
+
+  code = GET_CODE (x);
+
   if (code == SET || code == CLOBBER)
     {
       if (SET_DEST (x) != 0 && GET_CODE (SET_DEST (x)) == REG)