www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1996/06/12/00:40:47

From: sandmann AT clio DOT rice DOT edu (Charles Sandmann)
Message-Id: <9606120423.AA15091@clio.rice.edu>
Subject: Re: Bug in 387 emulator
To: drupp AT cs DOT washington DOT edu (Douglas Rupp)
Date: Tue, 11 Jun 1996 23:23:07 -0600 (CDT)
Cc: djgpp-workers AT delorie DOT com
In-Reply-To: <199606112308.QAA28587@june.cs.washington.edu> from "Douglas Rupp" at Jun 11, 96 04:08:21 pm

> It seems like the coprocessor emulators and libraries don't work with 
> signals.  This small program doesn't get SIGFPE when run under either
> emu387 or wmemu387:

Under the braindead AT architecture, with the FPU exception hooked up
to a hardware interrupt instead of a processor exception vector, emulation
of FP errors would be infeasible, so a different method would be needed.
The emu control word would need to be set to generat an exception, then the
emulator would need to return an error code, which the current code
somewhat incorrectly handles as SIGFPE.  I don't know of anyone who
is willing to spend any time working on emulation stuff when FPUs
are essentially free.  Find the person with lots of time to waste, and
I'll put them to work fixing these things.

> the FSU pthreads library uses signal handling and it doesn't seem to work 
> at all with floating point emulation.  

That may well be a completely separate problem, since the interface to
the emulation stuff is tightly coupled with the signal library, and if
you mess with signals incorrectly, or modify the signal library, it
probably won't work.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019