This is the mail archive of the
gdb-prs@sourceware.org
mailing list for the GDB project.
[Bug backtrace/9711] Quadratic slowdown in backtrace for deep stack traces
- From: "brobecker at gnat dot com" <sourceware-bugzilla at sourceware dot org>
- To: gdb-prs at sourceware dot org
- Date: 31 Aug 2009 23:13:50 -0000
- Subject: [Bug backtrace/9711] Quadratic slowdown in backtrace for deep stack traces
- References: <20090105180812.9711.ppluzhnikov@google.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From brobecker at gnat dot com 2009-08-31 23:13 -------
The slowdown comes from printing the frame corresponding to "main", because argv
is stored in %rsi. The following transcript shows a more isolated way of
reproducing the issue:
(gdb) set print frame-arguments none
(gdb) run 5000
Starting program: /[...]/deep 5000
Program received signal SIGABRT, Aborted.
0x00007ffff7a9efb5 in raise () from /lib/libc.so.6
(gdb) frame 5004
#5004 0x00000000004005a2 in main (argc=..., argv=...) at deep.c:34
34 return visit (&n);
(gdb) p /x $rsi
$1 = 0x748b
The "p /x $rsi" take a long time, while the rest is pretty much instantaneous.
That's as much as I can do for today, but look at it some more tomorrow.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=9711
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.