Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Kevin Buettner <kevinb@redhat.com>
To: Piet/Pete Delaney <piet@sgi.com>, Kevin Buettner <kevinb@redhat.com>
Cc: gdb@sources.redhat.com
Subject: Re: ia64-stub.c
Date: Tue, 22 Jan 2002 13:57:00 -0000	[thread overview]
Message-ID: <1020122215702.ZM6622@localhost.localdomain> (raw)
In-Reply-To: Piet/Pete Delaney <piet@sgi.com> "Re: ia64-stub.c" (Jan 22, 12:51pm)

On Jan 22, 12:51pm, Piet/Pete Delaney wrote:

> I expected them to be offsets into the registers stored in memory in the
> order specified by the ia64_register_names[] array in gdb/ia64-tdep.c.

See u_offsets[] in gdbserver/low-linux.c.  These are the offsets
needed by the ptrace() operations PTRACE_PEEKUSER / PTRACE_POKEUSER. 
I haven't tried it in a while, so these offsets may need some
updating.  (They ought to match the offsets found in ia64-linux-nat.c.)


> I was also wondering if the macro REGISTER_RAW_SIZE in gdb/config/ia64/tm-ia64.h
> is correct. It's saying that all registers other that the floating point are 8 bytes
> long.

The macro in question is defined that way for gdbserver.  Note that the
IA-64 target is multiarched and that the only definition that GDB uses
from config/ia64/tm-ia64.h is:

    #define GDB_MULTI_ARCH 1

Anyway, REGISTER_RAW_SIZE is about a correct as it can be for gdbserver.

> I thought I read that the predict registers p0..p63 are 1 bit and packed into
> a single 64 bit chunk of memory.

They're packed into the pr register.  ia64-tdep.c knows how to unpack
this register to give you discreet p0..p63 registers.  (Note that from
GDB's standpoint these registers are read-only.  A bit of work still
needs to be done to make them writable too.)

> I was wondering if by passing all of the registers in
> the ia64_register_names I was passing to much and clobbering some data structures.

It's possible.  I seem to remember fixing something like this when I was
using it.  It could be that it's broken again.

> When
> I use the gdb info registers cmd it seems to know the values in first 31 registers from
> my response to the 'g' cmd but then tries to access memory for the rest.

This is correct.

> The memory location
> it's trys to access is an offset from the values it receives for the first 31 registers.

That's not right.  It should be an offset from bsp.

Kevin


  reply	other threads:[~2002-01-22 21:57 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-21  1:00 ia64-stub.c Piet/Pete Delaney
2002-01-21 13:45 ` ia64-stub.c Kevin Buettner
     [not found]   ` <20020122105652.A57552@sgi.com>
     [not found]     ` <1020122190037.ZM5902@localhost.localdomain>
     [not found]       ` <20020122121956.B57552@sgi.com>
2002-01-22 12:51         ` ia64-stub.c Piet/Pete Delaney
2002-01-22 13:57           ` Kevin Buettner [this message]
2002-01-22 15:35             ` ia64-stub.c Piet/Pete Delaney
2002-01-22 18:27               ` ia64-stub.c Kevin Buettner
2002-01-22 23:47                 ` ia64-stub.c Piet/Pete Delaney
2002-01-23  3:16                   ` ia64-stub.c Kevin Buettner
2002-01-23  4:44                     ` ia64-stub.c Piet/Pete Delaney
2002-01-23  7:29                   ` ia64-stub.c Andrew Cagney

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1020122215702.ZM6622@localhost.localdomain \
    --to=kevinb@redhat.com \
    --cc=gdb@sources.redhat.com \
    --cc=piet@sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox