List Info

Thread: Question on attribute save-restore in reg elements (target descriptions).




Question on attribute save-restore in reg elements (target descriptions).
user name
2008-05-09 16:41:58
Hello,

  Per Appendix F, Sec. F.2.5 Registers, of the GDB User
Manual:

  save-restore

     Whether the register should be preserved across
inferior function
     calls; this must be either yes or no. The default is
yes, which
     is appropriate for most registers except for some
system control
     registers; this is not related to the target's ABI.

  In our target description file, we have a lot of special
purpose
  registers about which nothing might be assumed either way,
so in
  addition to 'yes' and 'no', can we have an
"unspecified" value to
  this attribute, (say, denoted by '?')? In what way does
GDB use this
  information?

  PS: Please could you also clarify the term 'inferior
function'?

Thank you,
Anmol.


Re: Question on attribute save-restore in reg elements (target descriptions).
country flaguser name
United States
2008-05-11 16:29:00
On Fri, May 09, 2008 at 04:41:58PM -0500, Anmol P. Paralkar
wrote:
> Hello,
>
>  Per Appendix F, Sec. F.2.5 Registers, of the GDB User
Manual:
>
>  save-restore
>
>     Whether the register should be preserved across
inferior function
>     calls; this must be either yes or no. The default
is yes, which
>     is appropriate for most registers except for some
system control
>     registers; this is not related to the target's
ABI.
>
>  In our target description file, we have a lot of
special purpose
>  registers about which nothing might be assumed either
way, so in
>  addition to 'yes' and 'no', can we have an
"unspecified" value to
>  this attribute, (say, denoted by '?')? In what way
does GDB use this
>  information?

GDB uses this information to make a decision, so clearly it
can not be
unspecified - GDB would have to do something unspecified...

When the user types "print foo()" GDB will save
and restore those
registers which are marked with
save-restore="yes".  Generally this
is what you want for GPRs but not what you want for global
system
state like coprocessor control registers.

-- 
Daniel Jacobowitz
CodeSourcery

[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )