From 06a3350894231f70fdc4fd18fc84e60fb5db2dfa Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Thu, 11 Sep 2003 15:03:43 +0000 Subject: [PATCH] * dwarf2loc.c (dwarf2_loc_desc_needs_frame): Variables in a register do need a frame. --- gdb/ChangeLog | 5 +++++ gdb/dwarf2loc.c | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) 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 -- 2.47.2