Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Kevin Buettner <kevinb@redhat.com>
To: Jim Blandy <jimb@redhat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: RFA: Change PowerPC E500 raw regcache layout
Date: Fri, 23 Jul 2004 23:29:00 -0000	[thread overview]
Message-ID: <20040723162923.7d57d174@saguaro> (raw)
In-Reply-To: <vt2y8leqm4y.fsf@zenia.home>

On 20 Jul 2004 18:44:45 -0500
Jim Blandy <jimb@redhat.com> wrote:

> This patch has been tested (together with the previous patches) with
> no regressions on:
> 
> - powerpc-unknown-linux-gnu (PPC 7450 w/ Altivec)
> - powerpc-ibm-aix4.3.3.0
> - powerpc-unknown-linux-gnu (PPC E500)
> - i686-pc-linux-gnu x powerpc-eabispe (sim)

Thanks for doing this testing.

> 2004-07-20  Jim Blandy  <jimb@redhat.com>
> 
> 	Change the layout of the PowerPC E500 raw register cache to allow
> 	the lower 32-bit halves of the GPRS to be their own raw registers,
> 	not pseudoregisters.
> 	* ppc-tdep.h (struct gdbarch_tdep): Remove ppc_gprs_pseudo_p flag;
> 	add ppc_ev0_upper_regnum flag.
> 	* rs6000-tdep.c: #include "reggroups.h".
> 	(spe_register_p): Recognize the ev upper half registers as SPE
> 	registers.
> 	(init_sim_regno_table): Build gdb->sim mappings for the upper-half
> 	registers.
> 	(e500_move_ev_register): New function.
> 	(e500_pseudo_register_read, e500_pseudo_register_write): The 'ev'
> 	vector registers are the pseudo-registers now, formed by splicing
> 	together the gprs and the upper-half registers.
> 	(e500_register_reggroup_p): New function.
> 	(P): Macro deleted.
> 	(P8, A4): New macro.
> 	(PPC_EV_REGS, PPC_GPRS_PSEUDO_REGS): Macros deleted.
> 	(PPC_SPE_GP_REGS, PPC_SPE_UPPER_GP_REGS, PPC_EV_PSEUDO_REGS): New
> 	macros.
> 	(registers_e500): Rearrange register set so that the raw register
> 	set contains 32-bit GPRs and upper-half registers, and the SPE
> 	vector registers become pseudo-registers.
> 	(rs6000_gdbarch_init): Don't initialize tdep->ppc_gprs_pseudo_p;
> 	it has been deleted.  Initialize ppc_ev0_upper_regnum.  Many other
> 	register numbers are now the same for the E500 as they are for
> 	other PowerPC variants.  Register e500_register_reggroup_p as the
> 	register group function for the E500.
> 	* Makefile.in (rs6000-tdep.o): Update dependencies.
> 
> 	Adapt PPC E500 native support to the new raw regcache layout.
> 	* ppc-linux-nat.c (struct gdb_evrregset_t): Doc fixes.
> 	(read_spliced_spe_reg, write_spliced_spe_reg): Deleted.
> 	(fetch_spe_register, store_spe_register): Handle fetching/storing
> 	all the SPE registers at once, if regno == -1.  These now take
> 	over the job of fetch_spe_registers and store_spe_registers.
> 	(fetch_spe_registers, store_spe_registers): Deleted.
> 	(fetch_ppc_registers, store_ppc_registers): Fetch/store gprs
> 	unconditionally; they're always raw.  Fetch/store SPE upper half
> 	registers, if present, instead of ev registers.
> 	(fetch_register, store_register): Remove sanity checks: gprs are
> 	never pseudo-registers now, so we never need to even mention any
> 	registers that are ever pseudoregisters.

Okay, except for the uses of ``gdb_assert (0)''.  Please use
internal_error() for these instead.

Kevin


  reply	other threads:[~2004-07-23 23:29 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-07-20 23:45 Jim Blandy
2004-07-23 23:29 ` Kevin Buettner [this message]
2004-08-04 17:48   ` Jim Blandy

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=20040723162923.7d57d174@saguaro \
    --to=kevinb@redhat.com \
    --cc=gdb-patches@sources.redhat.com \
    --cc=jimb@redhat.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