mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
921222e2e8
One part of PR cli/19551 is that the mini debug info objfile reuses the name of the main objfile from which it comes. This can be seen because gdb claims to be reading symbols from the same file two times, like: Reading symbols from /bin/gdb...Reading symbols from /bin/gdb...(no debugging symbols found)...done. I think this would be less confusing if the minidebug objfile were given a different name. That is what this patch implements. It also arranges for the minidebug objfile to be marked OBJF_NOT_FILENAME. After this patch the output looks like: Reading symbols from /bin/gdb...Reading symbols from .gnu_debugdata for /usr/libexec/gdb...(no debugging symbols found)...done. Tested by the buildbot. gdb/ChangeLog 2018-05-16 Tom Tromey <tom@tromey.com> PR cli/19551: * symfile-add-flags.h (enum symfile_add_flags) <SYMFILE_NOT_FILENAME>: New constant. * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME. Get objfile name from BFD. (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME. * minidebug.c (find_separate_debug_file_in_section): Put ".gnu_debugdata" into BFD's file name.
52 lines
1.7 KiB
C
52 lines
1.7 KiB
C
/* Definition of symfile add flags.
|
|
|
|
Copyright (C) 1990-2018 Free Software Foundation, Inc.
|
|
|
|
This file is part of GDB.
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
|
|
|
#if !defined (SYMFILE_ADD_FLAGS_H)
|
|
#define SYMFILE_ADD_FLAGS_H
|
|
|
|
#include "common/enum-flags.h"
|
|
|
|
/* This enum encodes bit-flags passed as ADD_FLAGS parameter to
|
|
symbol_file_add, etc. Defined in a separate file to break circular
|
|
header dependencies. */
|
|
|
|
enum symfile_add_flag
|
|
{
|
|
/* Be chatty about what you are doing. */
|
|
SYMFILE_VERBOSE = 1 << 1,
|
|
|
|
/* This is the main symbol file (as opposed to symbol file for
|
|
dynamically loaded code). */
|
|
SYMFILE_MAINLINE = 1 << 2,
|
|
|
|
/* Do not call breakpoint_re_set when adding this symbol file. */
|
|
SYMFILE_DEFER_BP_RESET = 1 << 3,
|
|
|
|
/* Do not immediately read symbols for this file. By default,
|
|
symbols are read when the objfile is created. */
|
|
SYMFILE_NO_READ = 1 << 4,
|
|
|
|
/* The new objfile should be marked OBJF_NOT_FILENAME. */
|
|
SYMFILE_NOT_FILENAME = 1 << 5,
|
|
};
|
|
|
|
DEF_ENUM_FLAGS_TYPE (enum symfile_add_flag, symfile_add_flags);
|
|
|
|
#endif /* !defined(SYMFILE_ADD_FLAGS_H) */
|