GCC viciously beaten by ICC in trig test!
Dan Nicolaescu
dann@godzilla.ics.uci.edu
Mon Mar 15 18:22:00 GMT 2004
Stelios Xanthakis <sxanth@ceid.upatras.gr> writes:
> On Sun, 14 Mar 2004, Dan Nicolaescu wrote:
>
> > Roger Sayle <roger@eyesopen.com> writes:
> > > fsin
> > > fmul %st(0), %st
> >
> > Intel 8.0 (that was used in the original test) generates something
> > very different:
Please be careful when snipping, the essential part that you deleted
is this:
call __libm_sse2_sincos #7.15
# LOE ebp esi edi xmm0 xmm1
..B1.4: # Preds ..B1.1
i.e. ICC 8 generates a call to an SSE library function instead of
using the fsin instruction. Given that this changed from ICC 7 to ICC
8, the library function is probably faster.
> > mulsd %xmm1, %xmm1 #10.25
> > mulsd %xmm0, %xmm0 #10.15
> > addsd %xmm1, %xmm0 #10.25
> > movsd %xmm0, (%esp) #10.25
> > fldl (%esp) #10.25
> >
>
> Does --fpmath=sse fix this?
> Can the processor in question do sse for doubles?
>
> In my experience, "--fpmath=sse --fsingle-precision-constants"
> generates much faster code for a raytracer I have here.
See above.
More information about the Gcc
mailing list