From: Vladimir Prus Date: Thu, 15 Nov 2007 06:24:17 +0000 (+0000) Subject: Remove 'run_cleanup'. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=615b9dba457a9d625112f48bb3171baa710750ea;p=binutils-gdb.git Remove 'run_cleanup'. * defs.h (do_run_cleanups, make_run_cleanup): Remove declarations. * infcmd.c (run_command_1): Call clear_solib instead of do_run_cleanups. * jv-lang.c (java_rerun_cleanup): Remove, for lack of any use. * solib.c (solib_cleanup_queued, do_clear_solib): Remove. (update_solib_lib): Don't setup run cleanup. (no_shared_libraries): Call clear_solib, not do_clear_solib. * utils.c (run_cleanup_chain, make_run_cleanup) (do_run_cleanups): Remove. --- diff --git a/ChangeLog b/ChangeLog index 4eff217f53d..69d95cbb002 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,18 @@ +2007-10-15 Vladimir Prus + + Remove 'run_cleanup'. + * defs.h (do_run_cleanups, make_run_cleanup): Remove + declarations. + * infcmd.c (run_command_1): Call clear_solib instead + of do_run_cleanups. + * jv-lang.c (java_rerun_cleanup): Remove, for lack of + any use. + * solib.c (solib_cleanup_queued, do_clear_solib): Remove. + (update_solib_lib): Don't setup run cleanup. + (no_shared_libraries): Call clear_solib, not do_clear_solib. + * utils.c (run_cleanup_chain, make_run_cleanup) + (do_run_cleanups): Remove. + 2007-10-15 Vladimir Prus Remove CLEAR_SOLIB use. diff --git a/gdb/defs.h b/gdb/defs.h index 8cfc6e36aa7..deaa52806cd 100644 --- a/gdb/defs.h +++ b/gdb/defs.h @@ -347,7 +347,6 @@ extern char *safe_strerror (int); extern void do_cleanups (struct cleanup *); extern void do_final_cleanups (struct cleanup *); -extern void do_run_cleanups (struct cleanup *); extern void do_exec_cleanups (struct cleanup *); extern void do_exec_error_cleanups (struct cleanup *); @@ -383,8 +382,6 @@ extern struct cleanup *make_final_cleanup (make_cleanup_ftype *, void *); extern struct cleanup *make_my_cleanup (struct cleanup **, make_cleanup_ftype *, void *); -extern struct cleanup *make_run_cleanup (make_cleanup_ftype *, void *); - extern struct cleanup *make_exec_cleanup (make_cleanup_ftype *, void *); extern struct cleanup *make_exec_error_cleanup (make_cleanup_ftype *, void *); diff --git a/gdb/infcmd.c b/gdb/infcmd.c index 079d586feff..e8ac46a8ac4 100644 --- a/gdb/infcmd.c +++ b/gdb/infcmd.c @@ -482,7 +482,7 @@ run_command_1 (char *args, int from_tty, int tbreak_at_main) /* Purge old solib objfiles. */ objfile_purge_solibs (); - do_run_cleanups (NULL); + clear_solib (); /* The comment here used to read, "The exec file is re-read every time we do a generic_mourn_inferior, so we just have to worry diff --git a/gdb/jv-lang.c b/gdb/jv-lang.c index a426d6175f3..e3c62993c63 100644 --- a/gdb/jv-lang.c +++ b/gdb/jv-lang.c @@ -1133,25 +1133,3 @@ _initialize_java_language (void) add_language (&java_language_defn); } - -/* Cleanup code that should be run on every "run". - We should use make_run_cleanup to have this be called. - But will that mess up values in value histry? FIXME */ - -extern void java_rerun_cleanup (void); -void -java_rerun_cleanup (void) -{ - if (class_symtab != NULL) - { - free_symtab (class_symtab); /* ??? */ - class_symtab = NULL; - } - if (dynamics_objfile != NULL) - { - free_objfile (dynamics_objfile); - dynamics_objfile = NULL; - } - - java_object_type = NULL; -} diff --git a/gdb/solib.c b/gdb/solib.c index f687558180f..0ec0a51b8a4 100644 --- a/gdb/solib.c +++ b/gdb/solib.c @@ -86,12 +86,8 @@ struct target_so_ops *current_target_so_ops; static struct so_list *so_list_head; /* List of known shared objects */ -static int solib_cleanup_queued = 0; /* make_run_cleanup called */ - /* Local function prototypes */ -static void do_clear_solib (void *); - /* If non-empty, this is a search path for loading non-absolute shared library symbol files. This takes precedence over the environment variables PATH and LD_LIBRARY_PATH. */ @@ -506,15 +502,6 @@ update_solib_list (int from_tty, struct target_ops *target) "Error reading attached process's symbol file.\n", RETURN_MASK_ALL); - /* Since this function might actually add some elements to the - so_list_head list, arrange for it to be cleaned up when - appropriate. */ - if (!solib_cleanup_queued) - { - make_run_cleanup (do_clear_solib, NULL); - solib_cleanup_queued = 1; - } - /* GDB and the inferior's dynamic linker each maintain their own list of currently loaded shared objects; we want to bring the former in sync with the latter. Scan both lists, seeing which @@ -866,13 +853,6 @@ clear_solib (void) ops->clear_solib (); } -static void -do_clear_solib (void *dummy) -{ - solib_cleanup_queued = 0; - clear_solib (); -} - /* GLOBAL FUNCTION solib_create_inferior_hook -- shared library startup support @@ -955,7 +935,7 @@ void no_shared_libraries (char *ignored, int from_tty) { objfile_purge_solibs (); - do_clear_solib (NULL); + clear_solib (); } static void diff --git a/gdb/utils.c b/gdb/utils.c index af2fac827a8..3be084e804e 100644 --- a/gdb/utils.c +++ b/gdb/utils.c @@ -96,7 +96,6 @@ static void set_width (void); static struct cleanup *cleanup_chain; /* cleaned up after a failed command */ static struct cleanup *final_cleanup_chain; /* cleaned up when gdb exits */ -static struct cleanup *run_cleanup_chain; /* cleaned up on each 'run' */ static struct cleanup *exec_cleanup_chain; /* cleaned up on each execution command */ /* cleaned up on each error from within an execution command */ static struct cleanup *exec_error_cleanup_chain; @@ -209,12 +208,6 @@ make_final_cleanup (make_cleanup_ftype *function, void *arg) return make_my_cleanup (&final_cleanup_chain, function, arg); } -struct cleanup * -make_run_cleanup (make_cleanup_ftype *function, void *arg) -{ - return make_my_cleanup (&run_cleanup_chain, function, arg); -} - struct cleanup * make_exec_cleanup (make_cleanup_ftype *function, void *arg) { @@ -323,12 +316,6 @@ do_final_cleanups (struct cleanup *old_chain) do_my_cleanups (&final_cleanup_chain, old_chain); } -void -do_run_cleanups (struct cleanup *old_chain) -{ - do_my_cleanups (&run_cleanup_chain, old_chain); -} - void do_exec_cleanups (struct cleanup *old_chain) {