Invalid registers
Andrew STUBBS
andrew.stubbs@st.com
Mon Jul 11 15:42:00 GMT 2005
Hi,
I have been having a little trouble updating from GDB 5.3 to GDB 6.3.
It used to be the case that GDB would report '*value not available*' (for
SH - I haven't checked other architectures) if the value of a register is
not known in the current stack frame. However, it no longer does this.
Since I assume it has not acquired some way to find out what that value
was, I also assume this is somehow broken.
(Note that SH already was broken in this respect for fp registers etc.)
The code to print the data, in sh-tdep.c, has not changed greatly. It
still calls frame_register_read() to discover the status of each register.
However, deep in regcache.c, the code to handle this sort of thing has
changed somewhat (indeed a few 'deprecated_...'s have got into the mix).
The result is that no register is ever marked invalid.
I cannot find out how (or where) it is supposed to know whether a register
is invalid or not. Nor can I find any relevant discussion on the subject
by googling (or I don't recognise it when I see it).
Has this problem been fixed since 6.3 or become somehow obsolete? If not,
any clues how to fix it?
Thanks
Andrew Stubbs
More information about the Gdb
mailing list