Remove verbose code from backtrace command

In https://sourceware.org/ml/gdb-patches/2017-06/msg00741.html,
Pedro asks:

> Doesn't the "info verbose on" bit affect frame filters too?

The answer is that yes, it could.  However, it's not completely
effective, because the C code can't guess how many frames might need
to be unwound to satisfy the request -- a frame filter will request as
many frames as it needs.

Also, I tried removing this code from backtrace, and I think the
result is better without it.  In particular, now the expansion line
occurs just before the frame that caused the expansion, like:

    (gdb) bt no-filters
    #0  0x00007ffff576cecd in poll () from /lib64/libc.so.6
    Reading in symbols for ../../binutils-gdb/gdb/event-loop.c...done.
    #1  0x00000000007ecc33 in gdb_wait_for_event (block=1)
	at ../../binutils-gdb/gdb/event-loop.c:772
    #2  0x00000000007ec006 in gdb_do_one_event ()
	at ../../binutils-gdb/gdb/event-loop.c:347
    #3  0x00000000007ec03e in start_event_loop ()
	at ../../binutils-gdb/gdb/event-loop.c:371
    Reading in symbols for ../../binutils-gdb/gdb/main.c...done.
    #4  0x000000000086693d in captured_command_loop (
	Reading in symbols for ../../binutils-gdb/gdb/exceptions.c...done.
    data=0x0) at ../../binutils-gdb/gdb/main.c:325

So, I am proposing this patch to simply remove this code.

gdb/ChangeLog
2018-03-26  Tom Tromey  <tom@tromey.com>

	* stack.c (backtrace_command_1): Remove verbose code.
This commit is contained in:
Tom Tromey 2018-03-23 10:40:00 -06:00
parent 76c939acfd
commit 675015399b
2 changed files with 4 additions and 18 deletions

View File

@ -1,3 +1,7 @@
2018-03-26 Tom Tromey <tom@tromey.com>
* stack.c (backtrace_command_1): Remove verbose code.
2018-03-26 Tom Tromey <tom@tromey.com>
* python/py-framefilter.c (py_print_type): Don't catch

View File

@ -1780,24 +1780,6 @@ backtrace_command_1 (const char *count_exp, frame_filter_flags flags,
count = -1;
}
if (info_verbose)
{
/* Read in symbols for all of the frames. Need to do this in a
separate pass so that "Reading in symbols for xxx" messages
don't screw up the appearance of the backtrace. Also if
people have strong opinions against reading symbols for
backtrace this may have to be an option. */
i = count;
for (fi = trailing; fi != NULL && i--; fi = get_prev_frame (fi))
{
CORE_ADDR pc;
QUIT;
pc = get_frame_address_in_block (fi);
expand_symtab_containing_pc (pc, find_pc_mapped_section (pc));
}
}
for (i = 0, fi = trailing; fi && count--; i++, fi = get_prev_frame (fi))
{
QUIT;