To throw my hat into the ring, I'd be willing to help out with developing some library routines.  I did experiment once with using a truncated and factorised MacLaurin series to calculate Double-precision sin and cos simultaneously in native SSE2 (with sin and cos filling two elements of the same register), mainly so one wouldn't be forced to use the floating-point stack on 64-bit (the speed was about the same).  For 128-bit though, I imagine it would have to be fully emulated, down to how the mantissa and exponent are interpreted.  I admit I haven't studied the sfpu128 unit yet.  If you need "log" and "exp" implmented in software, if you can give me the exact requirements and specifications, I'll see what I can do.

Gareth aka. Kit

On 19/12/2021 13:52, Florian Klämpfl via fpc-devel wrote:

Am 19.12.2021 um 14:38 schrieb Jonas Maebe via fpc-devel 
<fpc-devel@lists.freepascal.org>:

On 19/12/2021 14:21, Nikolai Zhubr via fpc-devel wrote:
Just out of curiosity, couldn't bochs' x87 fpu implementation be of some use 
here?
It is approx 12k of C code and it is LGPL. Supposedly it is not fast but 
conformant.
Or does it need to be (re-)implemented in Pascal itself?
(Not implying it would be easy anyway, but still)
Note that FPC needs LGPL + static linking exception (the softfloat units are in 
the RTL).
Nikolai might be right, looking at it’s license it seems usable:

https://github.com/lubomyr/bochs/blob/master/cpu/fpu/fsincos.cc

Same as the softfloat code we use it seems.
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


--
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to