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.
