From 996812e3d43f78b17b6454d2948cd825ec98c63b Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Mon, 10 Apr 2017 15:18:49 +0100 Subject: [PATCH] GC gdb/thread.c:current_thread_cleanup_chain Commit 803bdfe43083475c7df3db38dc96f4e20d05457d ("Don't delete thread_info if refcount isn't zero") eliminated restore_current_thread_ptid_changed, so current_thread_cleanup_chain is no longer necessary either. gdb/ChangeLog: 2017-04-10 Pedro Alves * thread.c (struct current_thread_cleanup) : Delete field. (current_thread_cleanup_chain): Delete. (restore_current_thread_cleanup_dtor) (make_cleanup_restore_current_thread): Remove references to current_thread_cleanup_chain. --- gdb/ChangeLog | 8 ++++++++ gdb/thread.c | 17 ----------------- 2 files changed, 8 insertions(+), 17 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 3cb6cd73592..5e7736e44cb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2017-04-10 Pedro Alves + + * thread.c (struct current_thread_cleanup) : Delete field. + (current_thread_cleanup_chain): Delete. + (restore_current_thread_cleanup_dtor) + (make_cleanup_restore_current_thread): Remove references to + current_thread_cleanup_chain. + 2017-04-10 Alan Hayward * msp430-tdep.c (msp430_pseudo_register_read): Never return diff --git a/gdb/thread.c b/gdb/thread.c index 2d936cd1428..3aca30757c6 100644 --- a/gdb/thread.c +++ b/gdb/thread.c @@ -1549,11 +1549,6 @@ restore_selected_frame (struct frame_id a_frame_id, int frame_level) struct current_thread_cleanup { - /* Next in list of currently installed 'struct - current_thread_cleanup' cleanups. See - 'current_thread_cleanup_chain' below. */ - struct current_thread_cleanup *next; - thread_info *thread; struct frame_id selected_frame_id; int selected_frame_level; @@ -1562,13 +1557,6 @@ struct current_thread_cleanup int was_removable; }; -/* A chain of currently installed 'struct current_thread_cleanup' - cleanups. Restoring the previously selected thread looks up the - old thread in the thread list by ptid. If the thread changes ptid, - we need to update the cleanup's thread structure so the look up - succeeds. */ -static struct current_thread_cleanup *current_thread_cleanup_chain; - static void do_restore_current_thread_cleanup (void *arg) { @@ -1609,8 +1597,6 @@ restore_current_thread_cleanup_dtor (void *arg) struct thread_info *tp; struct inferior *inf; - current_thread_cleanup_chain = current_thread_cleanup_chain->next; - if (old->thread != NULL) old->thread->decref (); @@ -1642,9 +1628,6 @@ make_cleanup_restore_current_thread (void) old->inf_id = current_inferior ()->num; old->was_removable = current_inferior ()->removable; - old->next = current_thread_cleanup_chain; - current_thread_cleanup_chain = old; - if (!ptid_equal (inferior_ptid, null_ptid)) { struct frame_info *frame; -- 2.30.2