public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM] archer-tromey-dw-op-value: fix up all new FIXME comments on the branch
@ 2009-09-01 20:16 tromey
0 siblings, 0 replies; only message in thread
From: tromey @ 2009-09-01 20:16 UTC (permalink / raw)
To: archer-commits
The branch, archer-tromey-dw-op-value has been updated
via a34786f245d01eabb4238244d475b58098ab6df3 (commit)
from 6940cf4ed8935b4c4344abb2b9921b383739be24 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email.
- Log -----------------------------------------------------------------
commit a34786f245d01eabb4238244d475b58098ab6df3
Author: Tom Tromey <tromey@redhat.com>
Date: Tue Sep 1 14:16:09 2009 -0600
fix up all new FIXME comments on the branch
-----------------------------------------------------------------------
Summary of changes:
gdb/dwarf2-frame.c | 8 +++++++-
gdb/dwarf2expr.c | 8 ++++++--
2 files changed, 13 insertions(+), 3 deletions(-)
First 500 lines of diff:
diff --git a/gdb/dwarf2-frame.c b/gdb/dwarf2-frame.c
index 68199d4..806682f 100644
--- a/gdb/dwarf2-frame.c
+++ b/gdb/dwarf2-frame.c
@@ -363,7 +363,13 @@ execute_stack_op (gdb_byte *exp, ULONGEST len, int addr_size,
if (ctx->location == DWARF_VALUE_REGISTER)
result = read_reg (this_frame, result);
- /* FIXME */
+ else if (ctx->location != DWARF_VALUE_MEMORY)
+ {
+ /* This is actually invalid DWARF, but if we ever do run across
+ it somehow, we might as well support it. So, instead, report
+ it as unimplemented. */
+ error (_("Not implemented: computing unwound register using explicit value operator"));
+ }
free_dwarf_expr_context (ctx);
diff --git a/gdb/dwarf2expr.c b/gdb/dwarf2expr.c
index 393dcd1..a673939 100644
--- a/gdb/dwarf2expr.c
+++ b/gdb/dwarf2expr.c
@@ -283,7 +283,9 @@ signed_address_type (struct gdbarch *gdbarch, int addr_size)
static void
require_composition (gdb_byte *op_ptr, gdb_byte *op_end, const char *op_name)
{
- /* FIXME: DW_OP_GNU_uninit? */
+ /* It seems like DW_OP_GNU_uninit should be handled here. However,
+ it doesn't seem to make sense for DW_OP_*_value, and it was not
+ checked at the other place that this function is called. */
if (op_ptr != op_end && *op_ptr != DW_OP_piece && *op_ptr != DW_OP_bit_piece)
error (_("DWARF-2 expression error: `%s' operations must be "
"used either alone or in conjuction with DW_OP_piece "
@@ -532,10 +534,12 @@ execute_stack_op (struct dwarf_expr_context *ctx,
specific this_base method. */
(ctx->get_frame_base) (ctx->baton, &datastart, &datalen);
dwarf_expr_eval (ctx, datastart, datalen);
+ if (ctx->location == DWARF_VALUE_LITERAL
+ || ctx->location == DWARF_VALUE_STACK)
+ error (_("Not implemented: computing frame base using explicit value operator"));
result = dwarf_expr_fetch (ctx, 0);
if (ctx->location == DWARF_VALUE_REGISTER)
result = (ctx->read_reg) (ctx->baton, result);
- /* FIXME: other DWARF_VALUE_*?? */
result = result + offset;
ctx->stack_len = before_stack_len;
ctx->location = DWARF_VALUE_MEMORY;
hooks/post-receive
--
Repository for Project Archer.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-09-01 20:16 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-01 20:16 [SCM] archer-tromey-dw-op-value: fix up all new FIXME comments on the branch tromey
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).