This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: libjava configure question
Andrew Haley writes:
> Bryce McKinlay writes:
> > Andrew Haley wrote:
> >
> > >Tom Tromey writes:
> > > > >>>>> "Andrew" == Andrew Haley <aph@redhat.com> writes:
> > > >
> > > > Andrew> One other thing: I don't think we can do this in
> > > > Andrew> general and meet even the more relaxed requirements of
> > > > Andrew> java.lang.Math, because the x86 has a restricted range
> > > > Andrew> of allowable arguments to its trig functions.
> > > >
> > > > I thought the Math restrictions were designed to explicitly allow use
> > > > of the FPU on x86.
> > >
> > >Yes, but not without some wrapper code. The crucial issue here is
> > >full range reduction, and the floating-point instructions don't do
> > >that by themselves.
> >
> > I'm sure the math library functions do, though - we'd still likely
> > get a performance improvement from using those directly, even
> > without inlining of FP instructions - since they'll be optimized
> > for each architecture.
>
> Yes, that's probably true. We'd have to make sure that calls to
> java::lang::Math::sin() etc. were replaced by sin() and we'd also have
> either to remove our own definitions of the functions or make them
> weak.
>
> All quite possible, but perhaps not top of the list.
I just tried, and I discovered that even without any optimizations
gcc/glibc fails dismally to meet even the relaxed java.lang.Math
accuracy requirement for trig functions. We should keep our own math
library, because it's better.
Andrew.