aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/dwarf2expr.c12
2 files changed, 5 insertions, 12 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 112512b..8acbf2a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2003-10-09 Daniel Jacobowitz <drow@mvista.com>
+
+ * dwarf2expr.c (execute_stack_op): Don't treat the frame base as
+ a memory pointer.
+
2003-10-08 Jeff Johnston <jjohnstn@redhat.com>
* lin-lwp.c (stop_and_resume_callback): Set the resumed flag
diff --git a/gdb/dwarf2expr.c b/gdb/dwarf2expr.c
index 3d1523b..cf00929 100644
--- a/gdb/dwarf2expr.c
+++ b/gdb/dwarf2expr.c
@@ -441,18 +441,6 @@ execute_stack_op (struct dwarf_expr_context *ctx, unsigned char *op_ptr,
result = dwarf_expr_fetch (ctx, 0);
if (ctx->in_reg)
result = (ctx->read_reg) (ctx->baton, result);
- else
- {
- char *buf = alloca (TARGET_ADDR_BIT / TARGET_CHAR_BIT);
- int bytes_read;
-
- (ctx->read_mem) (ctx->baton, buf, result,
- TARGET_ADDR_BIT / TARGET_CHAR_BIT);
- result = dwarf2_read_address (buf,
- buf + (TARGET_ADDR_BIT
- / TARGET_CHAR_BIT),
- &bytes_read);
- }
result = result + offset;
ctx->stack_len = before_stack_len;
ctx->in_reg = 0;