aboutsummaryrefslogtreecommitdiff
path: root/gdb/ravenscar-thread.c
AgeCommit message (Collapse)AuthorFilesLines
2011-09-16[Ada] Adjust ada-tasks.c:ada_build_task_listJoel Brobecker1-1/+1
Originally, this function had a parameter called `warn_if_null' which would trigger a message to be printed on stdout if the program was found to not use Ada tasking. It used one of the printf_ functions for that, which is wrong when considering the context of GDB/MI interpreters. So, this patch changes this function to stop printing the message, and leaves that part to the callers instead. It also changes the semantics slightly to return the number of tasks found, rather than a yes/no answer. Not strictly needed, but simple enough to do, and potentially useful later. gdb/ChangeLog: * ada-lang.h (ada_build_task_list): Remove parameter `warn_if_null'. * ada-tasks.c (ada_build_task_list): Remove parameter `warn_if_null'. Adjust implementation and documentation. (valid_task_id, ada_get_environment_task) iterate_over_live_ada_tasks): Adjust call to ada_build_task_list. (info_tasks_command): Adjust implementation. (task_command): Likewise. * ravenscar-thread.c (ravenscar_find_new_threads): Fix call to ada_build_task_list.
2011-07-04ada-tasks.c: handle known tasks maintained by a simply-linked list.Joel Brobecker1-1/+4
The mapping between Ada tasks, and the underlying threads is normally maintained by the GNAT runtime under the known_tasks array. For performance reasons, this array is just a static array with 10_000 entries in it. However, this is not very practical in certain environments where memory is limited. For those environments, the runtime has been enhanced to use an alternate scheme with a linked list. This change enhances the Ada tasking support to recognize this situation and use the correct way of reading the tasks info based on the the situation. gdb/ChangeLog (Tristan Gingold) * ada-tasks.c (KNOWN_TASKS_LIST): New macro. (tcb_fieldno): Add activation_link field. (get_known_tasks_addr): Moved and rewritten. (get_tcb_types_info): Set activation_link field. (read_known_tasks_array): Add parameter. Rewritten. (read_known_tasks_list): New function. (read_known_tasks): New function. (ada_build_task_list): Call read_known_tasks instead of read_known_tasks_array. * ravenscar-thread.c: Add first_task_name constant. (has_ravenscar_runtime): Check for task list too.
2011-01-102011-01-10 Michael Snyder <msnyder@vmware.com>Michael Snyder1-2/+3
* nto-procfs.c: Comment cleanup, mostly periods and spaces. * nto-tdep.c: Ditto. * nto-tdep.h: Ditto. * objc-exp.y: Ditto. * objc-lang.c: Ditto. * objfiles.c: Ditto. * objfiles.h: Ditto. * observer.c: Ditto. * opencl-lang.c: Ditto. * osabi.c: Ditto. * parse.c: Ditto. * parser-defs.h: Ditto. * p-exp.y: Ditto. * p-lang.c: Ditto. * posix-hdep.c: Ditto. * ppcbug-rom.c: Ditto. * ppc-linux-nat.c: Ditto. * ppc-linux-tdep.c: Ditto. * ppc-linux-tdep.h: Ditto. * ppcnbsd-tdep.c: Ditto. * ppcobsd-tdep.c: Ditto. * ppcobsd-tdep.h: Ditto. * ppc-sysv-tdep.c: Ditto. * ppc-tdep.h: Ditto. * printcmd.c: Ditto. * proc-abi.c: Ditto. * proc-flags.c: Ditto. * procfs.c: Ditto. * proc-utils.h: Ditto. * progspace.h: Ditto. * prologue-value.c: Ditto. * prologue-value.h: Ditto. * psympriv.h: Ditto. * psymtab.c: Ditto. * p-typeprint.c: Ditto. * p-valprint.c: Ditto. * ravenscar-sparc-thread.c: Ditto. * ravenscar-thread.c: Ditto. * ravenscar-thread.h: Ditto. * record.c: Ditto. * regcache.c: Ditto. * regcache.h: Ditto. * remote.c: Ditto. * remote-fileio.c: Ditto. * remote-fileio.h: Ditto. * remote.h: Ditto. * remote-m32r-sdi.c: Ditto. * remote-mips.c: Ditto. * remote-sim.c: Ditto. * rs6000-aix-tdep.c: Ditto. * rs6000-nat.c: Ditto. * rs6000-tdep.c: Ditto.
2011-01-01run copyright.sh for 2011.Joel Brobecker1-1/+1
2010-11-23copy/paste typo when registering the `show ravenscar' prefix commandJoel Brobecker1-1/+1
gdb/ChangeLog: * ravenscar-thread.c (_initialize_ravenscar): Fix copy/paste typo in name of "show ravenscar" prefix command name.
2010-11-23Add missing \n in `show ravenscar task-switching' outputJoel Brobecker1-2/+2
A new-line was missing at the end of the output of the `show ravenscar task-switching' command. For instance: (gdb) show ravenscar task-switching Support for Ravenscar task/thread switching is enabled(gdb) This patch fixes it. gdb/ChangeLog: * ravenscar-thread.c (show_ravenscar_task_switching_command): Add missing '\n' in output.
2010-11-23[Ada/ravenscar] New name for active-thread symbolJoel Brobecker1-10/+28
The GNAT Ravenscar implementation has recently been enhanced to allow programs using that runtime to run on multi-cpu systems. One of the changes that were made is that the name of the symbol we use to determine which task is the currently-running task has changed. This patch enhances the debugger to use the new name, and fallback on the old name if not found (this is for compatibility with older versions of the compiler/runtime). gdb/ChangeLog: * ravenscar-thread.c (running_thread_name): Change value. (read_thread_id): Remove advance declaration. (get_running_thread_msymbol): New function. (has_ravenscar_runtime): Use get_running_thread_msymbol to compute msym_running_thread. (get_running_thread_id): Renames read_thread_id. Slight modifications to not take any argument anymore, using get_running_thread_msymbol to determine which symbol to use instead. (ravenscar_running_thread): Use get_running_thread_id instead of read_thread_id.
2010-09-28Add support for GNAT Ravenscar run-time library.Joel Brobecker1-0/+434
gdb/ChangeLog (Jerome Guitton, Joel Brobecker): * ravenscar-thread.c, ravenscar-thread.h, ravenscar-sparc-thread.c: New files. * configure.tgt (sparc-*-*): Add ravenscar-thread.o and ravenscar-sparc-thread.o to gdb_target_obs.