This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH, testsuite] Don't run SREC, IHEX and TEKHEX tests for MIPS N64.
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: lgustavo at codesourcery dot com
- Cc: palves at redhat dot com (Pedro Alves), tromey at redhat dot com (Tom Tromey), stanshebs at earthlink dot net (Stan Shebs), gdb-patches at sourceware dot org (GDB Patches)
- Date: Thu, 4 Jul 2013 15:22:39 +0200 (CEST)
- Subject: Re: [PATCH, testsuite] Don't run SREC, IHEX and TEKHEX tests for MIPS N64.
Luis Machado wrote:
> On 07/03/2013 12:05 PM, Pedro Alves wrote:
> > On 07/02/2013 07:50 PM, Luis Machado wrote:
> >> -
> >> -if {[istarget "spu*-*-*"]} then {
> >> - # The internal address format used for the combined Cell/B.E.
> >> - # debugger requires 64-bit.
> >> - set is64bitonly "yes"
> >> -}
> >> -
> >
> > I'm not sure this equates to sizeof pointer == 64-bit.
> > This bit may need to be retained. [Adding Ulrich].
>
> Fair enough. Ulrich, let me know if the pointer check in the attached
> patch doesn't make sense for Cell BE.
No, the pointer check is not enough. The problem is that on Cell/B.E.,
GDB uses a (purely internal to GDB) address format to encode multiple
address spaces into a synthetic GDB address space. See the long
comment in spu-tdep.h for details.
The "restore" command needs a full internal 64-bit address on Cell/B.E.
to uniquely identify the location where to restore memory. Thus using
a data format that can only remember 32-bit addresses don't work:
http://sourceware.org/ml/gdb-patches/2008-09/msg00139.html
However, just testing the size of a pointer will return 32-bit on SPU,
because that's the ABI-defined pointer size (the 64 bits are purely
GDB internal). So I think Cell/B.E. / SPU will need to remain a
special case here for now.
Bye,
Ulrich
--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com