Use of C99 extra long double math functions after r236148

Stephen Montgomery-Smith stephen at missouri.edu
Sun Aug 12 23:04:56 UTC 2012


On 07/28/2012 06:13 PM, Peter Jeremy wrote:
> On 2012-Jul-28 16:59:23 -0500, Stephen Montgomery-Smith <stephen at missouri.edu> wrote:
>> On 07/28/2012 07:58 AM, Peter Jeremy wrote:
>>> Whilst I was debugging the code, I found the following elisp useful
>>> for post-processing the output:
>>>
>>> (progn (downcase-region (point-min) (point-max))
>>>    (repl-regexp "^ [ ]c" "..c")
>>>    (repl-regexp "^ c" ".c")
> ...
>
> Oops, I forgot that repl-regexp is one of my private functions:
>
> (defun repl-regexp (from to)
>    "Replace every occurrence of regexp FROM with TO in current buffer."
>    (goto-char (point-min))
>    (while (search-forward-regexp from nil t)
>      (replace-match to nil nil)))
>
> Note that it's safe to execute that progn in the buffer contaning ctest
> output.
>
>> It is a really nice program.
>
> Thanks.
>
>> I forgot - does it check the fenv settings as well?  It would be great
>> if it does.
>
> Not yet.  That's my next task.  I've also been thinking about how to do
> better than cpow(x,y) = cexp(y*clog(x)).
>


One thing your program doesn't check are things like:

real part of casinh(-0+I*x) is -0
imaginary part of casinh(x-I*0) is -0

etc, where x is finite, non-zero.  (This follows from casinh being odd 
and conjugate invariant.)




More information about the freebsd-numerics mailing list