aboutsummaryrefslogtreecommitdiff
path: root/gcc/function.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-12-05 11:49:24 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-12-05 06:49:24 -0500
commit53b6fb26fcd1f4f399d1fa96053b9a6c108abc68 (patch)
treee753933b95efa6a3b23841bc7778c126b17c74af /gcc/function.c
parentc24ae149dd6cec1b08f21d99c8db45fe9ba3f442 (diff)
downloadgcc-53b6fb26fcd1f4f399d1fa96053b9a6c108abc68.zip
gcc-53b6fb26fcd1f4f399d1fa96053b9a6c108abc68.tar.gz
gcc-53b6fb26fcd1f4f399d1fa96053b9a6c108abc68.tar.bz2
function.c (keep_stack_depressed): Refine check for register clobbered over call.
* function.c (keep_stack_depressed): Refine check for register clobbered over call. From-SVN: r47664
Diffstat (limited to 'gcc/function.c')
-rw-r--r--gcc/function.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/function.c b/gcc/function.c
index 653e2ab..3e7bf6e 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -7274,7 +7274,8 @@ keep_stack_depressed (seq)
for (regno = 0; regno < FIRST_PSEUDO_REGISTER; regno++)
if (HARD_REGNO_MODE_OK (regno, Pmode)
- && !fixed_regs[regno] && call_used_regs[regno]
+ && !fixed_regs[regno]
+ && TEST_HARD_REG_BIT (regs_invalidated_by_call, regno)
&& !FUNCTION_VALUE_REGNO_P (regno))
break;