diff options
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/remote.c | 8 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index bd19559..7c0eb55 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2007-02-26 Daniel Jacobowitz <dan@codesourcery.com> + * remote.c (init_remote_state): Add special handling for placeholder + registers. + +2007-02-26 Daniel Jacobowitz <dan@codesourcery.com> + * Makefile.in (XMLFILES): Include $(TDEP_XML). (filenames_h): New variable. (clean): Clean up xml-builtin.c and stamp-xml. diff --git a/gdb/remote.c b/gdb/remote.c index bb49aca..f106c5d 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -340,7 +340,13 @@ init_remote_state (struct gdbarch *gdbarch) for (regnum = 0; regnum < NUM_REGS; regnum++) { struct packet_reg *r = &rsa->regs[regnum]; - r->pnum = gdbarch_remote_register_number (gdbarch, regnum); + + if (register_size (current_gdbarch, regnum) == 0) + /* Do not try to fetch zero-sized (placeholder) registers. */ + r->pnum = -1; + else + r->pnum = gdbarch_remote_register_number (gdbarch, regnum); + r->regnum = regnum; } |