This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Ada] implement new multi-task mode scheme on vxworks


Manually tested on ppc-vxworks
Tested on i686-linux, committed on trunk

Implement a new scheme for the multi-tasks mode on VxWorks. On VxWorks,
when a task hit a breakpoint in the kernel space, only this
tasks is stopped; the other tasks of the application keep
running. Under the multi-tasks mode of GDB, to be able to debug the
whole Ada application, we go through the list of task and stop them
all. We used to let the debugger do that. The goal of this change is
to reduce the delay between the hit of the breakpoint and the stop of
the whole application. To do so, the run-time will provide a hook
(Stop_All_Tasks) which can be called from the breakpoint exception
handler on the target. The debugger will take care of attaching this
hook to the breakpoints that it sets. This change also provides the
proper way to resume the whole application, through a run-time routine
(Continue_All_Tasks).

2007-08-14  Jerome Guitton  <guitton@adacore.com>

	* s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb, 
	s-taprop-hpux-dce.adb, s-taprop-dummy.adb, s-taprop-solaris.adb, 
	s-taprop-vms.adb, s-taprop-posix.adb (Continue_Task, Stop_All_Tasks):
	New functions; dummy implementations.

	* s-osinte-vxworks.ads (Task_Stop, Task_Cont, Int_Lock, Int_Unlock): New
	functions, used to implement the multi-tasks mode routines on VxWorks.

	* s-osinte-vxworks.adb, s-osinte-vxworks6.adb (Task_Cont, Task_Stop):
	New functions, thin
	binding to the VxWorks routines which have changed between VxWorks 5
	and 6.
	(Int_Lock, Int_Unlock): New function, thin binding to kernel routines
	which are not callable from a RTP.

	* s-taprop-vxworks.adb (Stop_All_Tasks, Continue_Task): New functions,
	implemented for the multi-tasks mode on VxWorks 5 and 6.

	* s-taprop.ads (Stop_All_Tasks, Continue_Task): New functions.

	* s-tasdeb.ads, s-tasdeb.adb (Continue_All_Tasks, Stop_All_Tasks): New
	functions.

Attachment: difs
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]