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: Wed, 18 Oct 2006 19:58:00 -0000 [thread overview]
Message-ID: <200610181958.k9IJw88G009044@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>
>
> 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.
Unfortunately, I still get a few regressions, see below. They all
seem to be problems with not skipping the complete prologue. I get
the feeling that using line number information for prologue skipping
is just not reliable :(.
--- gdb.sum.2 Wed Oct 18 19:44:32 2006
+++ gdb.sum Wed Oct 18 20:44:26 2006
@@ -1,4 +1,4 @@
-Test Run By kettenis on Wed Oct 18 19:25:55 2006
+Test Run By kettenis on Wed Oct 18 20:25:47 2006
Native configuration is powerpc-unknown-openbsd3.9
=== gdb tests ===
@@ -5011,7 +5011,7 @@
PASS: gdb.base/sepdebug.exp: breakpoint function, optimized file
PASS: gdb.base/sepdebug.exp: breakpoint small function, optimized file
PASS: gdb.base/sepdebug.exp: run until function breakpoint, optimized file
-PASS: gdb.base/sepdebug.exp: run until breakpoint set at small function, optimized file
+FAIL: gdb.base/sepdebug.exp: run until breakpoint set at small function, optimized file
Running ../../../../src/gdb/gdb/testsuite/gdb.base/sepsymtab.exp ...
PASS: gdb.base/sepsymtab.exp: info sym main
Running ../../../../src/gdb/gdb/testsuite/gdb.base/setshow.exp ...
@@ -8540,7 +8540,7 @@
PASS: gdb.cp/m-data.exp: template object, base enum
PASS: gdb.cp/m-data.exp: template object, derived enum
PASS: gdb.cp/m-data.exp: continue to breakpoint: continue to shadow breakpoint
-PASS: gdb.cp/m-data.exp: shadowing member
+FAIL: gdb.cp/m-data.exp: shadowing member
PASS: gdb.cp/m-data.exp: shadowed global variable
Running ../../../../src/gdb/gdb/testsuite/gdb.cp/m-static.exp ...
PASS: gdb.cp/m-static.exp: continue to breakpoint: end of constructors
@@ -9314,6 +9314,21 @@
PASS: gdb.gdb/selftest.exp: set listsize to 1
PASS: gdb.gdb/selftest.exp: run until breakpoint at captured_main
PASS: gdb.gdb/selftest.exp: printed version as string
+PASS: gdb.gdb/selftest.exp: step over ttyarg initialization
+FAIL: gdb.gdb/selftest.exp: step over ttyarg initialization ended up at odd location
+PASS: gdb.gdb/selftest.exp: step over ttyarg initialization
+PASS: gdb.gdb/selftest.exp: step over cdarg initialization
+FAIL: gdb.gdb/selftest.exp: step over cdarg initialization ended up at odd location
+PASS: gdb.gdb/selftest.exp: step over cdarg initialization
+PASS: gdb.gdb/selftest.exp: step over corearg initialization
+FAIL: gdb.gdb/selftest.exp: step over corearg initialization ended up at odd location
+PASS: gdb.gdb/selftest.exp: step over corearg initialization
+PASS: gdb.gdb/selftest.exp: step over execarg initialization
+FAIL: gdb.gdb/selftest.exp: step over execarg initialization ended up at odd location
+PASS: gdb.gdb/selftest.exp: step over execarg initialization
+PASS: gdb.gdb/selftest.exp: step over symarg initialization
+FAIL: gdb.gdb/selftest.exp: step over symarg initialization ended up at odd location
+PASS: gdb.gdb/selftest.exp: step over symarg initialization
PASS: gdb.gdb/selftest.exp: step over argc initialization
PASS: gdb.gdb/selftest.exp: step over argv initialization
PASS: gdb.gdb/selftest.exp: next over get_run_time and everything it calls
@@ -9334,7 +9349,7 @@
PASS: gdb.gdb/selftest.exp: Set xgdb prompt
PASS: gdb.gdb/selftest.exp: send ^C to child process
PASS: gdb.gdb/selftest.exp: send SIGINT signal to child process
-PASS: gdb.gdb/selftest.exp: backtrace through signal handler
+FAIL: gdb.gdb/selftest.exp: backtrace through signal handler
Running ../../../../src/gdb/gdb/testsuite/gdb.gdb/xfullpath.exp ...
PASS: gdb.gdb/xfullpath.exp: breakpoint in captured_main
PASS: gdb.gdb/xfullpath.exp: run until breakpoint at captured_main
@@ -11227,8 +11242,8 @@
=== gdb Summary ===
-# of expected passes 10594
-# of unexpected failures 89
+# of expected passes 10605
+# of unexpected failures 93
# of expected failures 42
# of known failures 79
# of unresolved testcases 1
next prev parent reply other threads:[~2006-10-18 19:58 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
2006-10-18 5:41 ` Wu Zhou
2006-10-18 14:18 ` Daniel Jacobowitz
2006-10-18 19:58 ` Mark Kettenis [this message]
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=200610181958.k9IJw88G009044@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