From 093657dd1f0179ef00409ac527119d83b6ee28c7 Mon Sep 17 00:00:00 2001 From: jakub Date: Tue, 30 Mar 2010 20:16:52 +0000 Subject: [PATCH] PR debug/43593 * var-tracking.c (dataflow_set_clear_at_call): Invalidate just regs_invalidated_by_call instead all call_used_reg_set registers. * gcc.dg/guality/pr43593.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157834 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 7 +++++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/var-tracking.c | 2 +- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a533a7fef60..cddbce7fad3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2010-03-30 Jakub Jelinek + + PR debug/43593 + * var-tracking.c (dataflow_set_clear_at_call): Invalidate + just regs_invalidated_by_call instead all call_used_reg_set + registers. + 2010-03-30 Sebastian Pop PR middle-end/43430 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index c9ede61b356..a7af1c643f2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-03-30 Jakub Jelinek + + PR debug/43593 + * gcc.dg/guality/pr43593.c: New test. + 2010-03-30 Sebastian Pop PR middle-end/43430 diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c index bff7d119d73..e0f722974d0 100644 --- a/gcc/var-tracking.c +++ b/gcc/var-tracking.c @@ -4170,7 +4170,7 @@ dataflow_set_clear_at_call (dataflow_set *set) int r; for (r = 0; r < FIRST_PSEUDO_REGISTER; r++) - if (TEST_HARD_REG_BIT (call_used_reg_set, r)) + if (TEST_HARD_REG_BIT (regs_invalidated_by_call, r)) var_regno_delete (set, r); if (MAY_HAVE_DEBUG_INSNS) -- 2.11.0