On 07.31, Gwenole Beauchesne wrote:
> On Thu, 31 Jul 2003, J.A. Magallon wrote:
> 
> > a) With pentium3, gcc spits sse instructions for moves, like movaps.
> >    Sure it should be doing this ? If I build with -mno-sse, my code
works
> >    again. But -msse should only activate/deactivate the use of
> >    __builtin_movaps() and friends. I am also developing the use of SSE
> >    for my vector math, so I _need_ -msse. How can I just enable the
builtins,
> >    but prevent gcc to spit its own sse instructions ?
> 
> Indeed, doco states that enables intrinsics. But I'd believe this changed 
> over time. Please, can I get a testcase of that one too?
> 
> > b) Automatic use of SSE would be ok if gcc is sure arguments are
aligned,
> >    or if it uses unaligned moves. But I have seen gcc do things like:
> > 
> >    movups  %xmm0, -120(%ebp)
> > 
> >    Who knows how is that aligned ? Even if stack is 16-byte aligned,
> >    120 is not a multiple of 16... Changing that to movups and compiling
> >    the assembler, things work. So obviously it was not aligned.
> 
> Can you please provide me with an appropriate testcase?
> 

I am trying to reduce it, but I can't get gcc to emit the movaps with
simpler cases...
Still at work.

;)

-- 
J.A. Magallon <[EMAIL PROTECTED]>      \                 Software is like
sex:
werewolf.able.es                         \           It's better when it's
free
Mandrake Linux release 9.2 (Cooker) for i586
Linux 2.4.22-pre9-jam1m (gcc 3.3.1 (Mandrake Linux 9.2 3.3.1-0.7mdk))

Reply via email to