diff options
-rw-r--r-- | gdb/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/objfiles.c | 55 | ||||
-rw-r--r-- | gdb/objfiles.h | 4 |
3 files changed, 29 insertions, 37 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 7c737ac..67de848 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2019-10-20 Tom Tromey <tom@tromey.com> + + * objfiles.h (unlink_objfile, put_objfile_before): Don't declare. + * objfiles.c (unlink_objfile): Move earlier. Now static. Remove + obsolete comment. + (put_objfile_before): Now static. + 2019-10-19 Simon Marchi <simon.marchi@polymtl.ca> * gdbsupport/common-utils.h (startswith): Change return type to diff --git a/gdb/objfiles.c b/gdb/objfiles.c index f1e708d..fd1cbf7 100644 --- a/gdb/objfiles.c +++ b/gdb/objfiles.c @@ -473,10 +473,31 @@ separate_debug_iterator::operator++ () return *this; } +/* Unlink OBJFILE from the list of known objfiles. */ + +static void +unlink_objfile (struct objfile *objfile) +{ + struct objfile **objpp; + + for (objpp = &object_files; *objpp != NULL; objpp = &((*objpp)->next)) + { + if (*objpp == objfile) + { + *objpp = (*objpp)->next; + objfile->next = NULL; + return; + } + } + + internal_error (__FILE__, __LINE__, + _("unlink_objfile: objfile already unlinked")); +} + /* Put one object file before a specified on in the global list. This can be used to make sure an object file is destroyed before another when using objfiles_safe to free all objfiles. */ -void +static void put_objfile_before (struct objfile *objfile, struct objfile *before_this) { struct objfile **objp; @@ -497,38 +518,6 @@ put_objfile_before (struct objfile *objfile, struct objfile *before_this) _("put_objfile_before: before objfile not in list")); } -/* Unlink OBJFILE from the list of known objfiles, if it is found in the - list. - - It is not a bug, or error, to call this function if OBJFILE is not known - to be in the current list. This is done in the case of mapped objfiles, - for example, just to ensure that the mapped objfile doesn't appear twice - in the list. Since the list is threaded, linking in a mapped objfile - twice would create a circular list. - - If OBJFILE turns out to be in the list, we zap it's NEXT pointer after - unlinking it, just to ensure that we have completely severed any linkages - between the OBJFILE and the list. */ - -void -unlink_objfile (struct objfile *objfile) -{ - struct objfile **objpp; - - for (objpp = &object_files; *objpp != NULL; objpp = &((*objpp)->next)) - { - if (*objpp == objfile) - { - *objpp = (*objpp)->next; - objfile->next = NULL; - return; - } - } - - internal_error (__FILE__, __LINE__, - _("unlink_objfile: objfile already unlinked")); -} - /* Add OBJFILE as a separate debug objfile of PARENT. */ void diff --git a/gdb/objfiles.h b/gdb/objfiles.h index 2d921208..aa8e320 100644 --- a/gdb/objfiles.h +++ b/gdb/objfiles.h @@ -637,12 +637,8 @@ extern CORE_ADDR entry_point_address (void); extern void build_objfile_section_table (struct objfile *); -extern void put_objfile_before (struct objfile *, struct objfile *); - extern void add_separate_debug_objfile (struct objfile *, struct objfile *); -extern void unlink_objfile (struct objfile *); - extern void free_objfile_separate_debug (struct objfile *); extern void free_all_objfiles (void); |