From f3a4b1fb36c495d135e935718b8ebf0056b25577 Mon Sep 17 00:00:00 2001 From: jakub Date: Sat, 4 Jul 2009 17:19:26 +0000 Subject: [PATCH] PR debug/40596 * dwarf2out.c (based_loc_descr): For crtl->stack_realign_tried don't check cfa.reg. Instead of cfa.indirect use fde && fde->drap_reg != INVALID_REGNUM test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149235 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 7 +++++++ gcc/dwarf2out.c | 3 +-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4a4c3a7d25d..6d96786c2d0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2009-07-04 Jakub Jelinek + + PR debug/40596 + * dwarf2out.c (based_loc_descr): For crtl->stack_realign_tried + don't check cfa.reg. Instead of cfa.indirect use + fde && fde->drap_reg != INVALID_REGNUM test. + 2009-07-04 Eric Botcazou * postreload.c (reload_combine): Replace CONST_REG with INDEX_REG. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 33240393c8f..01b534c1694 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -10256,11 +10256,10 @@ based_loc_descr (rtx reg, HOST_WIDE_INT offset, is aligned without drap, use stack pointer + offset to access stack variables. */ if (crtl->stack_realign_tried - && cfa.reg == HARD_FRAME_POINTER_REGNUM && reg == frame_pointer_rtx) { int base_reg - = DWARF_FRAME_REGNUM (cfa.indirect + = DWARF_FRAME_REGNUM ((fde && fde->drap_reg != INVALID_REGNUM) ? HARD_FRAME_POINTER_REGNUM : STACK_POINTER_REGNUM); return new_reg_loc_descr (base_reg, offset); -- 2.11.0