X-Authentication-Warning: ieva01.lanet.lv: pavenis owned process doing -bs Date: Thu, 7 Jan 1999 19:43:13 +0200 (WET) From: Andris Pavenis To: djgpp-workers AT delorie DOT com cc: Robert Hoehne Subject: dbgcom.c and SIGINT Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp-workers AT delorie DOT com Hi! I tried to study why any DJGPP debugger (or program being debugged) with exceptions support added to dbgcom.c (see recent posts to this mailing list for source) sometimes hangs after I resume execution of program after SIGINT. I tried FSDB, GDB-4.17 and RHGDB-1.4.7. Final tests were done with RHGDB-1.4.7 under DOSEMU-0.99.5 (Linux-2.2.0-pre4) I saw the same behaviour with gdb from gdb416b.zip where exceptions were also supported (strange but true). I tried to write some simple test program but was not able to reproduce this problem. Normally I used some text mode application that were written for real calculations and I can give it rather long work, so I can interrupt it also many times. Under DOS session (Win95) it's difficult to see anything more after program (or debugger) is frozen: interrupts ENABLED, no more reaction to Ctrl-C and no more activity from program. Therefore I switched to DOSEMU (xdos) under Linux as I can run dosdebug from terminal and see what debugger or program is doing. No source level debugging available but anyway it was possible to get somo info. The result was that my application falls into infinite loop in hypot() (from libc.a) that is told in source to require only 3 iterations. As there is no memory access in that loop then of course Ctrl-C does not work. The only question is why this happens as I never saw such problem in normal use of this application (It's often used not only by me but also by other poeple). Also such problem could appear in my code but not inside hypot(). One more problem is that I cannot inspect FP registers from dosdebug. Main things I should suspect (as I think): - saving and restoring FP state I'll try to do some more research. Andris