This is the mail archive of the gcc-patches@gcc.gnu.org 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: [BENCHMARK]-mfpmath=sse should disable x387 intrinsics


On Fri, 26 Nov 2004 10:38:55 +0100, Uros Bizjak <uros@kss-loka.si> wrote:
> Jakub Jelinek wrote:
> 
> > Yeah, for static functions it should probably also pass say float and
> >
> >double arguments in SSE registers as well, not on the stack, not just
> >vector arguments.
> >
> >
> >
> There is a lot of i387 code generated for parameter passing. Compiling
> whetstone benchmark with:
> gcc -O2 -march=pentium4 -mfpmath=sse -S whetss.c, a lot of these
> constructs is created:

If you're curious what kind of code get's generated for the tramp3d-v3
inner loops
with -mfpmath=sse -ffast-math -O2 -fpeel-loops -march=athlon64, have a look
at
http://www.tat.physik.uni-tuebingen.de/~rguenth/gcc/tramp3d-v3.s
(only one short inner loop as example)

The worst stuff is all the shuffling from/to temporary variables (or
spills?).  At the
top of the file you'll see the source this is generated from (sketched).

Richard.


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