[Bug 240295] math(3): Add Complex Arithmetic functions and their hyperbolic counterparts
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Fri Sep 6 20:24:05 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=240295
--- Comment #9 from Steve Kargl <kargl at FreeBSD.org> ---
(In reply to Gordon Bergling from comment #8)
>
> I hope this was good for you, and you were able to direct all your anger,
> fear and uncertainty towards this problem report.
>
> For my perspective, I just saw at [1] that there is an unresolved
> issue with FreeBSD's math(3) implementation and I thought, that
> this could be solved by stepping a few steps backwards and looking
> at what the other BSDs have done to overcome that issue.
There is no anger, fear, or uncertainty in my response.
More likely disillusionment in that it seems that you
have made no effort to review the freebsd-numerics
mailing list archive or what libm currently has implemented.
Why does your patch have float complex and double complex
versions of the functions? FreeBSD's libm has had those
since 2011.
ccos() already implement in src/s_ccosh.c
* Copyright (c) 2005 Bruce D. Evans and Steven G. Kargl
ccosf() already implement in src/s_ccoshf.c
* Copyright (c) 2005 Bruce D. Evans and Steven G. Kargl
(Yes, the Copyright year is correct as it is likely that
some code came from other files hwne ccos and ccosf
> The tickets I mentioned within my original ticket were open
> for years
Yeah, I know. I'm the person who filed those PRs. I'm also
the only person for the last 20 years who has consistently
tried to fix FreeBSD libm to be C99 compliant with quality
implementations.
> and you are about to attacking the first person, who tries to
> address that issues. I am quite sure that is not the spirit
> what the FreeBSD project is about.
You're not the first person, and you're not the first person
who tries to grab code from one of the other BSDs as a solution
without understanding some of the nuances of the floating point
environment of FreeBSD.
Did you actually test the functions? Here's a test for your
ccoshl, and its wrong results
ccoshl(-0,-inf) = (nan,nan) expecting (nan,+0)
ccoshl(-0,+inf) = (nan,nan) expecting (nan,-0)
ccoshl(+0,+nan) = (nan,nan) expecting (nan,+0)
ccoshl(+0,-nan) = (nan,nan) expecting (nan,-0)
ccoshl(-0,-nan) = (nan,nan) expecting (nan,+0)
ccoshl(-0,+nan) = (nan,nan) expecting (nan,-0)
ccoshl(+inf,+0) = (nan,nan) expecting (+inf,+0)
ccoshl(+inf,-0) = (nan,nan) expecting (+inf,-0)
ccoshl(-inf,-0) = (nan,nan) expecting (+inf,+0)
ccoshl(-inf,+0) = (nan,nan) expecting (+inf,-0)
ccoshl(+nan,+0) = (nan,nan) expecting (nan,+0)
ccoshl(+nan,-0) = (nan,nan) expecting (nan,-0)
ccoshl(-nan,-0) = (nan,nan) expecting (nan,+0)
ccoshl(-nan,+0) = (nan,nan) expecting (nan,-0)
ccoshl(+inf,+nan) = (nan,nan) expecting (+inf,nan)
ccoshl(+inf,-nan) = (nan,nan) expecting (+inf,nan)
ccoshl(-inf,-nan) = (nan,nan) expecting (+inf,nan)
ccoshl(-inf,+nan) = (nan,nan) expecting (+inf,nan)
ccoshl(+inf,+inf) = (nan,nan) expecting (+inf,nan)
ccoshl(+inf,-inf) = (nan,nan) expecting (+inf,nan)
ccoshl(-inf,-inf) = (nan,nan) expecting (+inf,nan)
ccoshl(-inf,+inf) = (nan,nan) expecting (+inf,nan)
ccoshl(+inf,1) = (nan,+inf) expecting (+inf*cos(y),+inf*sin(y))
ccoshl(-inf,1) = (nan,-inf) expecting (+inf*cos(y),-inf*sin(y))
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-numerics
mailing list