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?

> Any ideas ? Candidate for gcc bugzilla ?

I will, because I first have to identify if this is not a defect 
introduced by one of our patches or the "alternate" 3.3-branch.

Thanks,
Gwenole.

Reply via email to