Move core_bfd to program space

This moves the core_bfd global to be a field of the program space.  It
then replaces core_bfd with a macro to avoid a massive patch -- the
same approach taken for various other program space fields.

This is a basic transformation for multi-target work.

2018-05-11  Tom Tromey  <tromey@redhat.com>
	    Pedro Alves  <tromey@redhat.com>

	* corefile.c (core_bfd): Remove.
	* gdbcore.h (core_bfd): Now a macro.
	* progspace.h (struct program_space) <cbfd>: New field.
This commit is contained in:
Tom Tromey 2018-05-11 19:10:13 +01:00 committed by Pedro Alves
parent 633cf2548b
commit e540a5a223
4 changed files with 11 additions and 5 deletions

View File

@ -1,3 +1,10 @@
2018-05-11 Tom Tromey <tromey@redhat.com>
Pedro Alves <tromey@redhat.com>
* corefile.c (core_bfd): Remove.
* gdbcore.h (core_bfd): Now a macro.
* progspace.h (struct program_space) <cbfd>: New field.
2018-05-11 Tom Tromey <tom@tromey.com>
* mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use

View File

@ -49,10 +49,6 @@ static hook_type *exec_file_extra_hooks; /* Array of additional
hooks. */
static int exec_file_hook_count = 0; /* Size of array. */
/* Binary file diddling handle for the core file. */
bfd *core_bfd = NULL;
/* Backward compatability with old way of specifying core files. */

View File

@ -133,7 +133,7 @@ extern void specify_exec_file_hook (void (*hook) (const char *filename));
/* Binary File Diddler for the core file. */
extern bfd *core_bfd;
#define core_bfd (current_program_space->cbfd)
/* corelow.c target. It is never NULL after GDB initialization. */

View File

@ -157,6 +157,9 @@ struct program_space
It needs to be freed by xfree. It is not NULL iff EBFD is not NULL. */
char *pspace_exec_filename = NULL;
/* Binary file diddling handle for the core file. */
bfd *cbfd = NULL;
/* The address space attached to this program space. More than one
program space may be bound to the same address space. In the
traditional unix-like debugging scenario, this will usually