2011-06-06 Pedro Alves <pedro@codesourcery.com>

gdb/
	* infcall.c (run_inferior_call): Don't mask async.  Instead force
	a synchronous wait, if the target can async.

	* target.h (struct target_ops): Delete to_async_mask.
	(target_async_mask): Delete.
	* target.c (update_current_target): Delete references to to_async_mask.
	* linux-nat.c (linux_nat_async_mask_value): Delete.
	(linux_nat_is_async_p, linux_nat_can_async_p): Remove references
	to linux_nat_async_mask_value.
	(linux_nat_async_mask): Delete.
	(linux_nat_async, linux_nat_close): Remove references to
	linux_nat_async_mask_value.
	* record.c (record_async_mask_value): Delete.
	(record_async): Remove references to record_async_mask_value.
	(record_async_mask): Delete.
	(record_can_async_p, record_is_async_p): Remove references to
	record_async_mask_value.
	(init_record_ops, init_record_core_ops): Remove references to
	record_async_mask.
	* remote.c (remote_async_mask_value): Delete.
	(init_remote_ops): Remove reference to remote_async_mask.
	(remote_can_async_p, remote_is_async_p): Remove references to
	remote_async_mask_value.
	(remote_async): Remove references to remote_async_mask_value.
	(remote_async_mask): Delete.

	* infrun.c (fetch_inferior_event): Don't claim registers changed
	if the current thread is already not executing.
This commit is contained in:
Pedro Alves
2011-06-06 12:47:07 +00:00
parent 3c0013bf3b
commit 3dd5b83d5b
8 changed files with 61 additions and 138 deletions

View File

@@ -134,8 +134,6 @@ static int remote_is_async_p (void);
static void remote_async (void (*callback) (enum inferior_event_type event_type,
void *context), void *context);
static int remote_async_mask (int new_mask);
static void remote_detach (struct target_ops *ops, char *args, int from_tty);
static void remote_interrupt (int signo);
@@ -721,8 +719,6 @@ static struct target_ops remote_ops;
static struct target_ops extended_remote_ops;
static int remote_async_mask_value = 1;
/* FIXME: cagney/1999-09-23: Even though getpkt was called with
``forever'' still use the normal timeout mechanism. This is
currently used by the ASYNC code to guarentee that target reads
@@ -10359,7 +10355,6 @@ Specify the serial device it is connected to\n\
remote_ops.to_can_async_p = remote_can_async_p;
remote_ops.to_is_async_p = remote_is_async_p;
remote_ops.to_async = remote_async;
remote_ops.to_async_mask = remote_async_mask;
remote_ops.to_terminal_inferior = remote_terminal_inferior;
remote_ops.to_terminal_ours = remote_terminal_ours;
remote_ops.to_supports_non_stop = remote_supports_non_stop;
@@ -10426,7 +10421,7 @@ remote_can_async_p (void)
return 0;
/* We're async whenever the serial device is. */
return remote_async_mask_value && serial_can_async_p (remote_desc);
return serial_can_async_p (remote_desc);
}
static int
@@ -10437,7 +10432,7 @@ remote_is_async_p (void)
return 0;
/* We're async whenever the serial device is. */
return remote_async_mask_value && serial_is_async_p (remote_desc);
return serial_is_async_p (remote_desc);
}
/* Pass the SERIAL event on and up to the client. One day this code
@@ -10473,10 +10468,6 @@ static void
remote_async (void (*callback) (enum inferior_event_type event_type,
void *context), void *context)
{
if (remote_async_mask_value == 0)
internal_error (__FILE__, __LINE__,
_("Calling remote_async when async is masked"));
if (callback != NULL)
{
serial_async (remote_desc, remote_async_serial_handler, NULL);
@@ -10487,15 +10478,6 @@ remote_async (void (*callback) (enum inferior_event_type event_type,
serial_async (remote_desc, NULL, NULL);
}
static int
remote_async_mask (int new_mask)
{
int curr_mask = remote_async_mask_value;
remote_async_mask_value = new_mask;
return curr_mask;
}
static void
set_remote_cmd (char *args, int from_tty)
{