This is the mail archive of the mailing list for the GDB 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]

Re: RFC: MI output during program execution

 > I've started a merge on current CVS (for some reason gdb-413 seemed to
 > include everything except the GDB source).  Getting MI output during
 > program execution seems to be closely related to making GDB asynchronous.
 > I couldn't attempt such a task on my own but, using the Apple code as a
 > prototype, it doesn't look too difficult.  When I have something working
 > perhaps I could put it on a branch.

I now have something that works for GNU/Linux (probably under limited
conditions).  With MI it now picks up mi_exec_async_cli_cmd_continuation to
print the *stopped record, even with CLI commands like "run":

-break-insert main
-interpreter-exec console run
Switching to interpreter "console".
(gdb) Starting program: /home/nickrob/myprog

Such asynchronous behaviour should also help with event notification which
Apple's code also has, but which I have not tried to merge for the moment.

I've changed the files:

cli-interp.c         infcmd.c	          mi-interp.c
defs.h		     inf-loop.c	 	  mi-main.c  
event-loop.c	     inf-ptrace.c	  mi-main.h  
event-loop.h	     infrun.c	 	  target.c   
event-top.c	     interps.c	 	  target.h   
event-top.h	     interps.h	 	  top.c	   
exec.c		     linux-nat.c	  tui-hooks.c
i386-linux-nat.c     linux-thread-db.c	  wrapper.h  

and added four new ones:


derived from their macosx-*-*.* counterparts.

Some files had to be changed e.g event-loop.c, event-top.c, inf-loop.c.
Others should probably have been changed elsewhere with different target
methods e.g i386-linux-nat.c linux-thread-db.c.  This is just a starting

I attach the new files and a set of diffs against HEAD from about 20:00 NZST
(+12 GMT) Sept 19 2005, for anyone who might like to test the functionality.
If I am given approval to commit these changes to a branch then I will create
ChangeLog entries (attributed to Apple).

I presume there is more freedom to committing on a non-release branch.  What
are the rules?


Attachment: async.tgz
Description: asynchronous GDB

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