tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

libm patch



Hi everyone,

I have been continuing my work on libm (former gSoC project) and I
have a patch[1] that I'd like to share with you.
It's a bit mixed in terms of changes (sorry):

* Added a few missing MLINKS
* Rewritten some elementary complex functions to not rely on gcc
extentions (creal, cimag, conj)
* Implemented some new elementary real+complex functions (fabsl,
copysignl, cproj*)
* Probably the most important change, is the introduction of
nextafterl() and friends, that will allow us to measure[2] the ULPs of
the long double precision functions that will arrive soon
* Some tidy up here and there

The patch is WIP.
I'm sharing early to get feedback, as my build cycles are quite long
and I could batch changes :)

Thoughts on:

* Style (whether __ should be prepended to float_complex for instance
(it isn't strictly needed, but gives a visual hint on the custom
origin of the type))
* File layout (should cproj.c be split into cproj.c, cprojf.c, cprojl.c?)
* Everything else

are very welcome.

Best regards,
Stathis
____________________________________________________________
[1] http://leaf.dragonflybsd.org/~beket/netbsd/tmp10.diff
[2] 
http://netbsd-soc.sourceforge.net/projects/mathlib/#_error_estimation_of_libm_functions


Home | Main Index | Thread Index | Old Index