Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Jim Blandy <jimb@zwingli.cygnus.com>
To: Andrew Cagney <ac131313@cygnus.com>
Cc: GDB Patches <gdb-patches@sourceware.cygnus.com>
Subject: Re: [rfc] Regcache revamp (vip)
Date: Thu, 22 Mar 2001 15:04:00 -0000	[thread overview]
Message-ID: <np8zlx2ymz.fsf@zwingli.cygnus.com> (raw)
In-Reply-To: <3AB2CE20.4AC725CF@cygnus.com>

One question that comes to mind:

Suppose we are looking at a frame some of whose registers have been
saved on the stack by younger frames.  Suppose we try to store a new
value in a register, and the gdbarch method turns this store into two
stores to two different registers --- one of which is saved on the
stack, and one of which isn't.  So now this store needs to be split
across a register cache and a stack slot.

How this case work in your code?

I think stuff like this happens in processors that have 64-bit
callee-saves registers, but where functions sometimes save only the
lower 32 bits in their frames, since that's all they use.  As you
visit older frames, you end up with registers whose upper 32 bits are
still in the register file, but whose lower 32 bits are saved on the
stack.  Assigning a new 64-bit value to such a register requires
storing the upper 32 in the register file, and the lower 32 on the
stack.  (What fun!)


  parent reply	other threads:[~2001-03-22 15:04 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <3AB2CE20.4AC725CF@cygnus.com>
2001-03-18 14:17 ` Andrew Cagney
2001-03-19 11:59 ` Andrew Cagney
2001-03-22 15:04 ` Jim Blandy [this message]
     [not found]   ` <3ABAAC0F.45A995A3@cygnus.com>
2001-03-23 17:26     ` 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=np8zlx2ymz.fsf@zwingli.cygnus.com \
    --to=jimb@zwingli.cygnus.com \
    --cc=ac131313@cygnus.com \
    --cc=gdb-patches@sourceware.cygnus.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