]> gcc.gnu.org Git - gcc.git/commitdiff
(regno_uninitialized): Return 0 if reg is used for args.
authorRichard Kenner <kenner@gcc.gnu.org>
Wed, 29 Jan 1997 21:00:25 +0000 (16:00 -0500)
committerRichard Kenner <kenner@gcc.gnu.org>
Wed, 29 Jan 1997 21:00:25 +0000 (16:00 -0500)
From-SVN: r13562

gcc/flow.c

index 86d72286331a72db86c864ec2ec94ef623657464..75948c562bdd664eda2b24d362aa1899ee2f0d76 100644 (file)
@@ -1,5 +1,5 @@
 /* Data flow analysis for GNU compiler.
-   Copyright (C) 1987, 88, 92, 93, 94, 95, 1996 Free Software Foundation, Inc.
+   Copyright (C) 1987, 88, 92-96, 1997 Free Software Foundation, Inc.
 
 This file is part of GNU CC.
 
@@ -1897,14 +1897,16 @@ libcall_dead_p (x, needed, note, insn)
 
 /* Return 1 if register REGNO was used before it was set.
    In other words, if it is live at function entry.
-   Don't count global register variables, though.  */
+   Don't count global register variables or variables in registers
+   that can be used for function arg passing, though.  */
 
 int
 regno_uninitialized (regno)
      int regno;
 {
   if (n_basic_blocks == 0
-      || (regno < FIRST_PSEUDO_REGISTER && global_regs[regno]))
+      || (regno < FIRST_PSEUDO_REGISTER
+         && (global_regs[regno] || FUNCTION_ARG_REGNO_P (regno))))
     return 0;
 
   return (basic_block_live_at_start[0][regno / REGSET_ELT_BITS]
This page took 0.09012 seconds and 5 git commands to generate.