This is the mail archive of the gdb@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: ARM register pages


On Thu, Jun 09, 2005 at 09:46:32AM -0700, Shaun Jackman wrote:
> On 6/8/05, Daniel Jacobowitz <drow@false.org> wrote:
> > On Wed, Jun 08, 2005 at 03:00:46PM -0700, Shaun Jackman wrote:
> > > Is there an "info registers" command that displays the paged registers
> > > for each ARM mode, such as $lr_svc and $lr_abt? GDB doesn't recognize
> > > these names on the command line for printing/setting. Could this be a
> > > wishlist item?
> > 
> > GDB doesn't even know that these registers exist, yet.  The normal ARM
> > remote protocol doesn't transfer them, either.
> 
> By the "normal ARM remote protocol" do you mean RDP/RDI, or the GDB
> remote protocol for ARM? Does the latter know about these registers?

The latter.  RDI does, of course.

> > GDB doesn't want to do this by default, usually, because they are
> > likely to be in different executable images.  If they aren't, assuming
> > that your abort handler saves the banked lr to the stack, you can
> > write DWARF-2 information to describe where it lives.
> 
> My data abort handler currently looks like:
> 	abt: b abt
> When everything freezes I interrupt the debugger to look at what's
> happened. I'd like to get a backtrace of the user mode from this
> state.

The easiest solution will be to do this instead:
abt:	[copy the banked address to lr, which is not useful at this
         point]
1:	b 1b

-- 
Daniel Jacobowitz
CodeSourcery, LLC


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