summaryrefslogtreecommitdiff
path: root/gdb/record.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2011-06-06 12:47:07 +0000
committerPedro Alves <palves@redhat.com>2011-06-06 12:47:07 +0000
commit3dd5b83d5bd7977bb5b98c9ef9bd8345c0f26d80 (patch)
tree5c5c72e79b6fd9a6041dd55e2dad4adf3c77704d /gdb/record.c
parent3c0013bf3bcaaf29176017ef8667ce591ad969c5 (diff)
downloadbinutils-gdb-3dd5b83d5bd7977bb5b98c9ef9bd8345c0f26d80.tar.gz
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.
Diffstat (limited to 'gdb/record.c')
-rw-r--r--gdb/record.c27
1 files changed, 2 insertions, 25 deletions
diff --git a/gdb/record.c b/gdb/record.c
index 9a4fbba6287..60de0853a8e 100644
--- a/gdb/record.c
+++ b/gdb/record.c
@@ -1817,16 +1817,10 @@ record_goto_bookmark (gdb_byte *bookmark, int from_tty)
return;
}
-static int record_async_mask_value = 1;
-
static void
record_async (void (*callback) (enum inferior_event_type event_type,
void *context), void *context)
{
- if (record_async_mask_value == 0)
- internal_error (__FILE__, __LINE__,
- _("Calling record_async when async is masked"));
-
/* If we're on top of a line target (e.g., linux-nat, remote), then
set it to async mode as well. Will be NULL if we're sitting on
top of the core target, for "record restore". */
@@ -1835,32 +1829,17 @@ record_async (void (*callback) (enum inferior_event_type event_type,
}
static int
-record_async_mask (int new_mask)
-{
- int curr_mask = record_async_mask_value;
-
- record_async_mask_value = new_mask;
- return curr_mask;
-}
-
-static int
record_can_async_p (void)
{
/* We only enable async when the user specifically asks for it. */
- if (!target_async_permitted)
- return 0;
-
- return record_async_mask_value;
+ return target_async_permitted;
}
static int
record_is_async_p (void)
{
/* We only enable async when the user specifically asks for it. */
- if (!target_async_permitted)
- return 0;
-
- return record_async_mask_value;
+ return target_async_permitted;
}
static enum exec_direction_kind
@@ -1899,7 +1878,6 @@ init_record_ops (void)
record_ops.to_async = record_async;
record_ops.to_can_async_p = record_can_async_p;
record_ops.to_is_async_p = record_is_async_p;
- record_ops.to_async_mask = record_async_mask;
record_ops.to_execution_direction = record_execution_direction;
record_ops.to_magic = OPS_MAGIC;
}
@@ -2125,7 +2103,6 @@ init_record_core_ops (void)
record_core_ops.to_async = record_async;
record_core_ops.to_can_async_p = record_can_async_p;
record_core_ops.to_is_async_p = record_is_async_p;
- record_core_ops.to_async_mask = record_async_mask;
record_core_ops.to_execution_direction = record_execution_direction;
record_core_ops.to_magic = OPS_MAGIC;
}