Mail Archives: djgpp-workers/2001/01/21/14:14:59
> From: Martin Str|mberg <ams AT ludd DOT luth DOT se>
> Date: Sun, 21 Jan 2001 19:34:25 +0100 (MET)
>
> According to Eli Zaretskii:
> > > > > Starting program: f:/hackery/stat/new_stat/analyse_.exe
> > > > >
> > > > > Program received signal SIGEMT, Emulation trap.
> > > > > 0x5535 in _control87 ()
> >
> > Btw, what does "bt" say at this point?
>
> Program received signal SIGEMT, Emulation trap.
> 0x5535 in _control87 ()
> (gdb) bt
> #0 0x5535 in _control87 ()
> #1 0x2ec3 in _npxsetup ()
> #2 0x3337 in __crt1_startup ()
This is expected: the startup code calls _control87 to set up the
(emulated) FPU into a correct state, such as mask exceptions etc.
Since there's no FPU, this triggers SIGNOFP which is caught by GDB.
Are these the only SIGEMTs, or are there others? If there are others,
please type "bt" after each one, and see what that shows.
If each SIGEMT originates in the debuggee, like this one, then there's
no problem here (unlike what I wrote in my previous message): GDB
always stops the debuggee when some signal happens, unless you tell it
not to stop, with "handle SIGfoo nostop". The only issue to consider
here is whether it is appropriate to make SIGEMT be nostop noprint by
default when there's no FPU. I will sleep on this.
- Raw text -