This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Fwd: [PATCH] PR21915, Add acosh, asinh, and atanh to intrinsics]

On Sun, 26 Jun 2005, Steve Kargl wrote:
> Actually, Jerry asked about putting these functions into
> c99_functions.c.  I asked him to leave them in hyper.c
> because c99_functions.c is intended for implementing C99
> functions that aren't present in libm (or libc).  For example,
> atanh[f], asinh[f], and acosh[f] pre-dates C99 by several years.
> OTOH, the long double versions [for example atanhl()] first
> appeared in C99 and many OS's may not have a atanhl() (for
> example FreeBSD).  An implementation f atanhl() should be placed
> in c99_functions.c.

Thanks for the explanation, though I still believe this distinction is
particularly odd (or atleast counter intuitive), given that sqrtf that
*is* in c99_functions.c also significantly predates C99.

My interpretation (as a significant contributor to c99_functions.c :)
was that c99_functions.c was supposed to implement run-time support for
targets that don't provide a full C99 run-time.  It's not as relevent
when these functions were first used/introduced, just that they are
expected to all be present in recent libc/libm implementations.

> Also, note hyper.c is similar to bessel.c.

Indeed.  If the libgfortran maintainers prefer these stub implementations
to be placed in many small source files, I can understand and abide by
that.  The libstdc++-v3 maintainers, on the other hand, prefer to keep
their equivalent implementations in a single libstdc++-v3/libmath/stubs.c.

I stand corrected.  Sorry for the noise.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]