/* To regenerate this file, run:*/
/* make-target-delegates target.h > target-delegates.c */
-static void
-delegate_attach (struct target_ops *self, char *arg1, int arg2)
-{
- self = self->beneath;
- self->to_attach (self, arg1, arg2);
-}
-
static void
delegate_post_attach (struct target_ops *self, int arg1)
{
}
static void
-delegate_disconnect (struct target_ops *self, char *arg1, int arg2)
+delegate_disconnect (struct target_ops *self, const char *arg1, int arg2)
{
self = self->beneath;
self->to_disconnect (self, arg1, arg2);
}
static void
-tdefault_disconnect (struct target_ops *self, char *arg1, int arg2)
+tdefault_disconnect (struct target_ops *self, const char *arg1, int arg2)
{
tcomplain ();
}
}
static void
-delegate_load (struct target_ops *self, char *arg1, int arg2)
+delegate_load (struct target_ops *self, const char *arg1, int arg2)
{
self = self->beneath;
self->to_load (self, arg1, arg2);
}
static void
-tdefault_load (struct target_ops *self, char *arg1, int arg2)
+tdefault_load (struct target_ops *self, const char *arg1, int arg2)
{
tcomplain ();
}
}
static void
-delegate_rcmd (struct target_ops *self, char *arg1, struct ui_file *arg2)
+delegate_rcmd (struct target_ops *self, const char *arg1, struct ui_file *arg2)
{
self = self->beneath;
self->to_rcmd (self, arg1, arg2);
return self->to_can_async_p (self);
}
+static int
+tdefault_can_async_p (struct target_ops *self)
+{
+ return 0;
+}
+
static int
delegate_is_async_p (struct target_ops *self)
{
return self->to_is_async_p (self);
}
+static int
+tdefault_is_async_p (struct target_ops *self)
+{
+ return 0;
+}
+
static void
delegate_async (struct target_ops *self, async_callback_ftype *arg1, void *arg2)
{
tcomplain ();
}
+static int
+delegate_supports_non_stop (struct target_ops *self)
+{
+ self = self->beneath;
+ return self->to_supports_non_stop (self);
+}
+
+static int
+tdefault_supports_non_stop (struct target_ops *self)
+{
+ return 0;
+}
+
static int
delegate_find_memory_regions (struct target_ops *self, find_memory_region_ftype arg1, void *arg2)
{
}
static gdb_byte *
-delegate_get_bookmark (struct target_ops *self, char *arg1, int arg2)
+delegate_get_bookmark (struct target_ops *self, const char *arg1, int arg2)
{
self = self->beneath;
return self->to_get_bookmark (self, arg1, arg2);
}
static gdb_byte *
-tdefault_get_bookmark (struct target_ops *self, char *arg1, int arg2)
+tdefault_get_bookmark (struct target_ops *self, const char *arg1, int arg2)
{
tcomplain ();
}
static void
-delegate_goto_bookmark (struct target_ops *self, gdb_byte *arg1, int arg2)
+delegate_goto_bookmark (struct target_ops *self, const gdb_byte *arg1, int arg2)
{
self = self->beneath;
self->to_goto_bookmark (self, arg1, arg2);
}
static void
-tdefault_goto_bookmark (struct target_ops *self, gdb_byte *arg1, int arg2)
+tdefault_goto_bookmark (struct target_ops *self, const gdb_byte *arg1, int arg2)
{
tcomplain ();
}
+static CORE_ADDR
+delegate_get_thread_local_address (struct target_ops *self, ptid_t arg1, CORE_ADDR arg2, CORE_ADDR arg3)
+{
+ self = self->beneath;
+ return self->to_get_thread_local_address (self, arg1, arg2, arg3);
+}
+
+static CORE_ADDR
+tdefault_get_thread_local_address (struct target_ops *self, ptid_t arg1, CORE_ADDR arg2, CORE_ADDR arg3)
+{
+ generic_tls_error ();
+}
+
static enum target_xfer_status
delegate_xfer_partial (struct target_ops *self, enum target_object arg1, const char *arg2, gdb_byte *arg3, const gdb_byte *arg4, ULONGEST arg5, ULONGEST arg6, ULONGEST *arg7)
{
return self->to_thread_architecture (self, arg1);
}
+static struct address_space *
+delegate_thread_address_space (struct target_ops *self, ptid_t arg1)
+{
+ self = self->beneath;
+ return self->to_thread_address_space (self, arg1);
+}
+
static void
delegate_trace_init (struct target_ops *self)
{
return self->to_verify_memory (self, arg1, arg2, arg3);
}
-static int
-tdefault_verify_memory (struct target_ops *self, const gdb_byte *arg1, CORE_ADDR arg2, ULONGEST arg3)
-{
- tcomplain ();
-}
-
static int
delegate_get_tib_address (struct target_ops *self, ptid_t arg1, CORE_ADDR *arg2)
{
return self->to_decr_pc_after_break (self, arg1);
}
+static void
+delegate_prepare_to_generate_core (struct target_ops *self)
+{
+ self = self->beneath;
+ self->to_prepare_to_generate_core (self);
+}
+
+static void
+tdefault_prepare_to_generate_core (struct target_ops *self)
+{
+}
+
+static void
+delegate_done_generating_core (struct target_ops *self)
+{
+ self = self->beneath;
+ self->to_done_generating_core (self);
+}
+
+static void
+tdefault_done_generating_core (struct target_ops *self)
+{
+}
+
static void
install_delegators (struct target_ops *ops)
{
- if (ops->to_attach == NULL)
- ops->to_attach = delegate_attach;
if (ops->to_post_attach == NULL)
ops->to_post_attach = delegate_post_attach;
if (ops->to_detach == NULL)
ops->to_is_async_p = delegate_is_async_p;
if (ops->to_async == NULL)
ops->to_async = delegate_async;
+ if (ops->to_supports_non_stop == NULL)
+ ops->to_supports_non_stop = delegate_supports_non_stop;
if (ops->to_find_memory_regions == NULL)
ops->to_find_memory_regions = delegate_find_memory_regions;
if (ops->to_make_corefile_notes == NULL)
ops->to_get_bookmark = delegate_get_bookmark;
if (ops->to_goto_bookmark == NULL)
ops->to_goto_bookmark = delegate_goto_bookmark;
+ if (ops->to_get_thread_local_address == NULL)
+ ops->to_get_thread_local_address = delegate_get_thread_local_address;
if (ops->to_xfer_partial == NULL)
ops->to_xfer_partial = delegate_xfer_partial;
if (ops->to_memory_map == NULL)
ops->to_can_run_breakpoint_commands = delegate_can_run_breakpoint_commands;
if (ops->to_thread_architecture == NULL)
ops->to_thread_architecture = delegate_thread_architecture;
+ if (ops->to_thread_address_space == NULL)
+ ops->to_thread_address_space = delegate_thread_address_space;
if (ops->to_trace_init == NULL)
ops->to_trace_init = delegate_trace_init;
if (ops->to_download_tracepoint == NULL)
ops->to_get_tailcall_unwinder = delegate_get_tailcall_unwinder;
if (ops->to_decr_pc_after_break == NULL)
ops->to_decr_pc_after_break = delegate_decr_pc_after_break;
+ if (ops->to_prepare_to_generate_core == NULL)
+ ops->to_prepare_to_generate_core = delegate_prepare_to_generate_core;
+ if (ops->to_done_generating_core == NULL)
+ ops->to_done_generating_core = delegate_done_generating_core;
}
static void
install_dummy_methods (struct target_ops *ops)
{
- ops->to_attach = find_default_attach;
ops->to_post_attach = tdefault_post_attach;
ops->to_detach = tdefault_detach;
ops->to_disconnect = tdefault_disconnect;
ops->to_pid_to_exec_file = tdefault_pid_to_exec_file;
ops->to_log_command = tdefault_log_command;
ops->to_get_section_table = tdefault_get_section_table;
- ops->to_can_async_p = find_default_can_async_p;
- ops->to_is_async_p = find_default_is_async_p;
+ ops->to_can_async_p = tdefault_can_async_p;
+ ops->to_is_async_p = tdefault_is_async_p;
ops->to_async = tdefault_async;
+ ops->to_supports_non_stop = tdefault_supports_non_stop;
ops->to_find_memory_regions = dummy_find_memory_regions;
ops->to_make_corefile_notes = dummy_make_corefile_notes;
ops->to_get_bookmark = tdefault_get_bookmark;
ops->to_goto_bookmark = tdefault_goto_bookmark;
+ ops->to_get_thread_local_address = tdefault_get_thread_local_address;
ops->to_xfer_partial = tdefault_xfer_partial;
ops->to_memory_map = tdefault_memory_map;
ops->to_flash_erase = tdefault_flash_erase;
ops->to_supports_evaluation_of_breakpoint_conditions = tdefault_supports_evaluation_of_breakpoint_conditions;
ops->to_can_run_breakpoint_commands = tdefault_can_run_breakpoint_commands;
ops->to_thread_architecture = default_thread_architecture;
+ ops->to_thread_address_space = default_thread_address_space;
ops->to_trace_init = tdefault_trace_init;
ops->to_download_tracepoint = tdefault_download_tracepoint;
ops->to_can_download_tracepoint = tdefault_can_download_tracepoint;
ops->to_set_trace_buffer_size = tdefault_set_trace_buffer_size;
ops->to_set_trace_notes = tdefault_set_trace_notes;
ops->to_core_of_thread = tdefault_core_of_thread;
- ops->to_verify_memory = tdefault_verify_memory;
+ ops->to_verify_memory = default_verify_memory;
ops->to_get_tib_address = tdefault_get_tib_address;
ops->to_set_permissions = tdefault_set_permissions;
ops->to_static_tracepoint_marker_at = tdefault_static_tracepoint_marker_at;
ops->to_get_unwinder = tdefault_get_unwinder;
ops->to_get_tailcall_unwinder = tdefault_get_tailcall_unwinder;
ops->to_decr_pc_after_break = default_target_decr_pc_after_break;
+ ops->to_prepare_to_generate_core = tdefault_prepare_to_generate_core;
+ ops->to_done_generating_core = tdefault_done_generating_core;
}