This is the mail archive of the gdb-patches@sourceware.org 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: [rfc] Adjust address size on MIPS


> Date: Fri, 3 Aug 2007 14:59:17 -0400
> From: Daniel Jacobowitz <drow@false.org>
> Cc: gdb-patches@sourceware.org
> Mail-Followup-To: Mark Kettenis <mark.kettenis@xs4all.nl>,
> 	gdb-patches@sourceware.org
> Content-Disposition: inline
> X-XS4ALL-DNSBL-Checked: mxdrop6.xs4all.nl checked 208.75.86.248 against DNS blacklists
> X-Virus-Scanned: by XS4ALL Virus Scanner
> X-XS4ALL-Spam-Score: 0.0 () DK_POLICY_SIGNSOME
> X-XS4ALL-Spam: NO
> Envelope-To: mark.kettenis@xs4all.nl
> X-UIDL: 1186167567._smtp.mxdrop6.29859,S=3540
> 
> On Fri, Aug 03, 2007 at 08:37:28PM +0200, Mark Kettenis wrote:
> > > Date: Fri, 3 Aug 2007 13:58:22 -0400
> > > From: Daniel Jacobowitz <drow@false.org>
> > > 
> > > I recently tried to use a 64-bit stub to debug an O32 MIPS program.
> > > It fell down because GDB would send a "m83000000" packet, instead of
> > > the proper "mffffffff83000000" packet (sign extended 64-bit
> > > addresses).  I think that if a stub sends us some 64-bit registers in
> > > the "g" packet, the polite thing to do would be to send it 64-bit
> > > addresses by default.
> > > 
> > > Does this sound wrong to anyone? 
> > 
> > This feels like a bad hack to me.  If it is sending 64-bit addresses
> > should PROPERTY_GP64 be set in the first place?
> 
> Isn't that exactly when it should be set?

Sorry, I meant to write "shouldn't PROPERTY_GP64 have been set in the
first place.

Or differently phrased, if we receive a g packet with 64-bit we set
PROPERTY_GP64 isn't it?  So shouldn't we use that property to set
decide whether we should sign extend the values in m packets?

I guess the fundamental problem here is that there is no consensus
about how gdb should handle running 32-bit mips code on a 64-bit cpu.
Should it present the isa of the executable, or should it present the
isa of the hardware the executable is running on.


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