From f630a401b42ad72e62a648f81bb604325e6fe6b8 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Thu, 11 Sep 2003 15:02:51 +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 8546227250b..72e53fe327b 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-11 Andrew Cagney Since the IRIX 4 configuration was forcing K&R mode it hasn't been 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.30.2