summaryrefslogtreecommitdiff
path: root/gdb/ax-gdb.c
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2008-02-05 15:54:34 +0000
committerJim Blandy <jimb@codesourcery.com>2008-02-05 15:54:34 +0000
commitbba1a8a8654042cb21541ce2dc71a95ac08ea72b (patch)
tree042d915f592a4c21a433fe5b71fec13e906fe85d /gdb/ax-gdb.c
parent0d8782345ef891a3cb7d0f317117241c8a4e59f3 (diff)
downloadgdb-bba1a8a8654042cb21541ce2dc71a95ac08ea72b.tar.gz
* ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
pseudoregister, not an internal error.
Diffstat (limited to 'gdb/ax-gdb.c')
-rw-r--r--gdb/ax-gdb.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c
index b527663fe01..571c3e7c8e4 100644
--- a/gdb/ax-gdb.c
+++ b/gdb/ax-gdb.c
@@ -1607,6 +1607,10 @@ gen_expr (union exp_element **pc, struct agent_expr *ax,
if (reg == -1)
internal_error (__FILE__, __LINE__,
_("Register $%s not available"), name);
+ if (reg >= gdbarch_num_regs (current_gdbarch))
+ error (_("'%s' is a pseudo-register; "
+ "GDB cannot yet trace pseudoregister contents."),
+ name);
value->kind = axs_lvalue_register;
value->u.reg = reg;
value->type = register_type (current_gdbarch, reg);