Merge handle_inferior_event and handle_inferior_event_1

I noticed that handle_inferior_event is just a small wrapper that
frees the value chain.  This patch replaces it with a
scoped_value_mark, reducing the number of lines of code here.

Regression tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-03-20  Tom Tromey  <tromey@adacore.com>

	* infrun.c (handle_inferior_event): Rename from
	handle_inferior_event_1.  Create a scoped_value_mark.
	(handle_inferior_event): Remove.
This commit is contained in:
Tom Tromey 2019-03-20 07:57:09 -06:00
parent e946b687ba
commit 595915c1c1
2 changed files with 12 additions and 17 deletions

View File

@ -1,3 +1,9 @@
2019-03-20 Tom Tromey <tromey@adacore.com>
* infrun.c (handle_inferior_event): Rename from
handle_inferior_event_1. Create a scoped_value_mark.
(handle_inferior_event): Remove.
2019-03-19 Tom Tromey <tromey@adacore.com>
* mi/mi-interp.c (mi_on_normal_stop_1): Only show displays once.

View File

@ -4591,8 +4591,13 @@ handle_no_resumed (struct execution_control_state *ecs)
once). */
static void
handle_inferior_event_1 (struct execution_control_state *ecs)
handle_inferior_event (struct execution_control_state *ecs)
{
/* Make sure that all temporary struct value objects that were
created during the handling of the event get deleted at the
end. */
scoped_value_mark free_values;
enum stop_kind stop_soon;
if (ecs->ws.kind == TARGET_WAITKIND_IGNORE)
@ -5189,22 +5194,6 @@ Cannot fill $_exitsignal with the correct signal number.\n"));
}
}
/* A wrapper around handle_inferior_event_1, which also makes sure
that all temporary struct value objects that were created during
the handling of the event get deleted at the end. */
static void
handle_inferior_event (struct execution_control_state *ecs)
{
struct value *mark = value_mark ();
handle_inferior_event_1 (ecs);
/* Purge all temporary values created during the event handling,
as it could be a long time before we return to the command level
where such values would otherwise be purged. */
value_free_to_mark (mark);
}
/* Restart threads back to what they were trying to do back when we
paused them for an in-line step-over. The EVENT_THREAD thread is
ignored. */