diff options
author | Joel Brobecker <brobecker@gnat.com> | 2011-09-16 19:09:17 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2011-09-16 19:09:17 +0000 |
commit | e225eb91c10da9c51e56ed9869321e7e854fec30 (patch) | |
tree | de2b45dfaa930f5666706bb21b294f3a7c70253a /gdb/ada-lang.h | |
parent | 6da9ca05ace2b56540db950aa5281e6ef76f76c3 (diff) | |
download | gdb-e225eb91c10da9c51e56ed9869321e7e854fec30.zip gdb-e225eb91c10da9c51e56ed9869321e7e854fec30.tar.gz gdb-e225eb91c10da9c51e56ed9869321e7e854fec30.tar.bz2 |
[Ada] Store the Ada task list in per-inferior data
Instead of storing "the" Ada task list using a static global
in ada-tasks, this patch stores that information inside
per-inferior data.
We also add in the per-inferior data the location and type of
data used in the runtime to store that task list. Previously,
this information was saved as a static variable in one of the
functions, but this approach has the major flaw that it does
not handle multi-inferior debugging.
gdb/ChangeLog:
* ada-tasks.c (ada_tasks_check_symbol_table, task_list): Delete.
(enum ada_known_tasks_kind, struct ada_tasks_inferior_data): New.
(ada_tasks_inferior_data_handle): New static global.
(get_ada_tasks_inferior_data): New function.
(ada_get_task_number, get_task_number_from_id, valid_task_id)
(ada_get_environment_task, iterate_over_live_ada_tasks)
(add_ada_task, read_known_tasks_array, read_known_tasks_list):
Adjust.
(ada_set_current_inferior_known_tasks_addr): New function.
(read_known_tasks, ada_build_task_list, short_task_info)
(info_tasks, info_task, info_tasks_command, task_command_1)
(task_command, ada_task_list_changed): Adjust.
(ada_tasks_invalidate_inferior_data): New function.
(ada_normal_stop_observer, ada_new_objfile_observer): Adjust.
(_initialize_tasks): Set ada_tasks_inferior_data_handle.
* ada-lang.h (struct inferior): Add declaration.
(ada_task_list_changed): Update profile.
* remote-wtx-pd.c: #include "inferior.h".
(switch_to_pd_internal): Update call to ada_task_list_changed.
Diffstat (limited to 'gdb/ada-lang.h')
0 files changed, 0 insertions, 0 deletions