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: [WIP/RFC] MIPS registers overhaul


On Fri, May 23, 2003 at 02:21:49PM -0400, Andrew Cagney wrote:
> 
> >>Er, it's the same deal as for SPARC.  If GDB is built against the 64 bit 
> >>debug interface, it can debug both 32 and 64 bit applications.  This is 
> >>the debuggers view, not the program being run's view.
> >
> >
> >But the point is that the debugger's view of a 32-bit application on
> >MIPS is of a 32-bit ISA.  That's all that's available.  You get 32-bit
> >registers from the kernel.
> 
> That isn't true.  CF the embedded case.  The ISA can be 64 bits, but the 
> ABI 32 bits.  This argument is becomming circular.

I'm not talking about the embedded case!  I never said that we should
always use a 32-bit protocol when debugging a 32-bit ABI.  I said that
in this case, using rda or gdbserver on a hosted system, it doesn't
make any sense to use the 64-bit protocol.

> GDB has to make a choice.  Either hack the tdep code so that it tries to 
> get the user, register, and target ABIs to all line up, or select an 
> underlying canonical ISA and expect targets to map their register values 
> onto that.  Selecting a definitive 64 bit ISA means that the tdep code 
> works in all cases - the target is made responsibile for resolving self 
> inflicted esoteric edge cases.

Then why have the 32-bit protocol at all, besides compatibility with
existing stubs?  Just waste the transfer time for the unused bits all
the time.

> Note here that the self inflicting esoteric target is remote.c, it is 
> still tied to the register cache at the hip :-(

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


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