Use of C99 extra long double math functions after r236148

David Schultz das at freebsd.org
Tue May 28 08:19:35 UTC 2013


On Tue, May 28, 2013, Bruce Evans wrote:
> On Mon, 27 May 2013, David Schultz wrote:
> 
> > ...
> > Below is a diff of all the changes needed to integrate it. I have
> > a short list of style fixes, but otherwise I think what you have
> > is good:
> >  - wrap lines to 80 chars, please
> >  - spaces between operators
> >  - "static inline", not "inline static"
> >  - don't use "inline" on large functions
> 
> Another reply.
> 
> I think I tested "inline" on the large functions (just 2) and found
> it useful for efficiency.  This is like inline on large trig support
> functions being useful.  The inline parts are duplicated once per
> C99-API function, and often the caller only uses on C99-API function.
> Actually, the large inlines are not duplicated that much.  cacosh()
> and casinh() are just wrappers that call cacos() and casin(),
> respectively.  There is no inlining for the last 2 (even larger)
> functions.  The overhead for the wrappers is noticeable, but more
> inlining didn't seem to reduce it much.
> 
> More investigation of the extent of the style bugs:
> - only 1 line is longer than 80 columns now and easy to fix.  Other long
>    lines are for declarations where I prefer to keep the long comments
>    on the same line
> - spaces between operations will expand a few lines beyond 80 columns if
>    done blindly.  Only a few.

If you did benchmarks to show that using inline is worthwhile
despite the cache pressure, then it's fine with me. I had assumed
that it was added without much thought.

Also, people have been asking for someone to commit this for a
long time, so I'm not going to split hairs over the spacing.


More information about the freebsd-numerics mailing list