This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFA: ia64 tdep patch


On Wed, Oct 22, 2003 at 04:57:34PM -0400, J. Johnston wrote:
> >>>
> >>>Could you add a comment explaining why the normal method of computing
> >>>V32 (via ia64_pseudo_register_read()) is inadequate?
> >>
> >>I don't know.  I had this for safety reasons already in the
> >>ia64_frame_prev_register() because I didn't know if it might be
> >>called with the pseudo register number or not.  This code was
> >>copied.  Should it be removed in both places?
> >
> >
> >I don't know.  I've been studying the code and am wondering why the
> >V32 ... V127 pseudo regs were introduced at all.  Could you remind
> >me of the reason?
> >
> 
> They are needed because r32 to r127 are not accessible via the PTRACE 
> interface. They are accessed via the bsp.  Without flagging them as 
>  pseudo-registers, the regcache code returns 0 for all these registers.

It depends. For FreeBSD I added ptrace(2) functions to get and set
stacked registers that are on the kernel stack. The problem more
generally is that registers above bspstore (but below bsp) are
not accessable in memory. I think it's better for gdb to keep the
distinction between stacked registers on the backing store and
"dirty" stacked registers. The distinction avoids that gdb makes
assumptions that are only valid on Linux or even only for the native
code.

BTW: I have partial support for FreeBSD/ia64. I'll send patches as
soon as I feel that the backtrace is reliable enough.

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel@xcllnt.net


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]