From: Richard Kenner Date: Wed, 29 Jan 1997 21:00:25 +0000 (-0500) Subject: (regno_uninitialized): Return 0 if reg is used for args. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6a45254e5be88f3767f80cf19d640eb44b23c1e7;p=gcc.git (regno_uninitialized): Return 0 if reg is used for args. From-SVN: r13562 --- diff --git a/gcc/flow.c b/gcc/flow.c index 86d72286331..75948c562bd 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -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]