From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: drow@false.org
Cc: gdb-patches@sourceware.org
Subject: Re: Improve end check on rs6000 prologue analyzer
Date: Tue, 17 Oct 2006 22:15:00 -0000 [thread overview]
Message-ID: <200610172215.k9HMF3Mg012869@elgar.sibelius.xs4all.nl> (raw)
In-Reply-To: <20061017212114.GC12643@nevyn.them.org> (message from Daniel Jacobowitz on Tue, 17 Oct 2006 17:21:14 -0400)
> Date: Tue, 17 Oct 2006 17:21:14 -0400
> From: Daniel Jacobowitz <drow@false.org>
>
> On Sat, Sep 30, 2006 at 09:32:00PM +0200, Mark Kettenis wrote:
> > > Date: Fri, 29 Sep 2006 17:37:26 -0400
> > > From: Daniel Jacobowitz <drow@false.org>
> > >
> > > Any comments on this patch? Otherwise, I'll plan to commit it in a few
> > > days.
> >
> > I get quite a few new regressions on OpenBSD/powerpc. Please don't
> > commit this.
>
> Hi Mark,
>
> Do you think you could try out this one, instead? I worked out what
> was going wrong for me: sign extension. I was testing a 64-bit GDB
> binary on 32-bit programs, which caused (op >> 22) == 0x20f to fail;
> when it didn't fail, on a 32-bit host, that check allows any load into
> r31 to be considered part of the prologue. But it was advancing so far
> that for small functions, the breakpoint was placed after the restore
> of r31 in the epilogue - much too far.
>
> This patch fixes the original bug, fixes the sign extension problem,
> and generally overhauls the prologue skipping (as opposed to scanning)
> to work more like MIPS's. It tests with no regressions on
> powerpc-linux, using a 32-bit binary this time.
I'll try to check it out tomorrow night. Time for me to go to zzz
now...
> 2006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
>
> * rs6000-tdep.c (rs6000_skip_prologue): Use skip_prologue_using_sal.
> (rs6000_in_function_epilogue_p): Use extract_unsigned_integer.
> (refine_prologue_limit): Delete.
> (skip_prologue): Don't call it. Use extract_unsigned_integer.
> Assume lim_pc is set. Correct check for incomplete prologues.
>
> 2006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
>
> * gdb.arch/powerpc-prologue.c (optimized_1_marker, gdb2029_marker)
> (optimized_1): New.
> (main): Call optimized_1.
> (gdb2029): Correct typos. Call gdb2029_marker.
> * gdb.arch/powerpc-prologue.exp: Run new test. Use a breakpoint
> for gdb2029.
next prev parent reply other threads:[~2006-10-17 22:15 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-29 21:37 Daniel Jacobowitz
2006-09-30 19:32 ` Mark Kettenis
2006-09-30 20:25 ` Daniel Jacobowitz
2006-10-17 21:21 ` Daniel Jacobowitz
2006-10-17 22:15 ` Mark Kettenis [this message]
2006-10-18 5:41 ` Wu Zhou
2006-10-18 14:18 ` Daniel Jacobowitz
2006-10-18 19:58 ` Mark Kettenis
2006-10-18 20:06 ` Daniel Jacobowitz
2006-11-30 20:12 ` Daniel Jacobowitz
2007-02-15 20:20 ` Aman Wardak
2007-03-09 15:05 ` Daniel Jacobowitz
2007-03-11 19:13 ` Mark Kettenis
2007-03-12 12:19 ` Daniel Jacobowitz
2007-03-12 21:02 ` Mark Kettenis
2007-03-12 21:09 ` Daniel Jacobowitz
2007-03-12 23:05 ` Mark Kettenis
2007-03-13 4:24 ` Eli Zaretskii
2007-04-10 21:10 ` Daniel Jacobowitz
2007-04-11 3:35 ` Eli Zaretskii
2007-04-11 11:11 ` Daniel Jacobowitz
2007-03-13 17:37 ` Daniel Jacobowitz
2007-04-17 2:02 ` Andreas Schwab
2007-04-17 15:02 ` Daniel Jacobowitz
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=200610172215.k9HMF3Mg012869@elgar.sibelius.xs4all.nl \
--to=mark.kettenis@xs4all.nl \
--cc=drow@false.org \
--cc=gdb-patches@sourceware.org \
/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