GC gdb/thread.c:current_thread_cleanup_chain

Commit 803bdfe430 ("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  <palves@redhat.com>

	* thread.c (struct current_thread_cleanup) <next>: Delete field.
	(current_thread_cleanup_chain): Delete.
	(restore_current_thread_cleanup_dtor)
	(make_cleanup_restore_current_thread): Remove references to
	current_thread_cleanup_chain.
This commit is contained in:
Pedro Alves 2017-04-10 15:18:49 +01:00
parent 845b344fd5
commit 996812e3d4
2 changed files with 8 additions and 17 deletions

View File

@ -1,3 +1,11 @@
2017-04-10 Pedro Alves <palves@redhat.com>
* thread.c (struct current_thread_cleanup) <next>: 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 <alan.hayward@arm.com>
* msp430-tdep.c (msp430_pseudo_register_read): Never return

View File

@ -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;