From: Daniel Jacobowitz Date: Thu, 11 Sep 2003 15:03:43 +0000 (+0000) Subject: * dwarf2loc.c (dwarf2_loc_desc_needs_frame): Variables in a X-Git-Tag: gdb_6_0-2003-10-04-release~51 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=06a3350894231f70fdc4fd18fc84e60fb5db2dfa;p=thirdparty%2Fbinutils-gdb.git * dwarf2loc.c (dwarf2_loc_desc_needs_frame): Variables in a register do need a frame. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9933378c8f8..ea86ab5f52b 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2003-09-11 Daniel Jacobowitz + + * dwarf2loc.c (dwarf2_loc_desc_needs_frame): Variables in a + register do need a frame. + 2003-09-09 Jeff Johnston * ia64-tdep.c (ia64_sigtramp_frame_init_saved_regs): diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c index a4141a0432c..fac5c4ac1a1 100644 --- a/gdb/dwarf2loc.c +++ b/gdb/dwarf2loc.c @@ -304,6 +304,7 @@ dwarf2_loc_desc_needs_frame (unsigned char *data, unsigned short size) { struct needs_frame_baton baton; struct dwarf_expr_context *ctx; + int in_reg; baton.needs_frame = 0; @@ -316,9 +317,11 @@ dwarf2_loc_desc_needs_frame (unsigned char *data, unsigned short size) dwarf_expr_eval (ctx, data, size); + in_reg = ctx->in_reg; + free_dwarf_expr_context (ctx); - return baton.needs_frame; + return baton.needs_frame || in_reg; } static void