More on SSE

Published June 10, 2005
Advertisement
Well, even though I said I was not going to convert my CVector3 class to hold a float[3] array instead of separate x,y,z variables, I did. It wasnt so much of an issue in the end, but unlike what I though, you DO need to use float[4] even if you're not using the whole 4 variables, plus, you should use movups instead of movaps when moving data from memory to a MMX register, yes, even if you declared the data as ALIGN16.

For some reason using movaps randomly threw segfault exceptions on me, even though the adress%16=0;

You learn something new every day [smile]

also, although it is valid to use the memory as one of the parameters for the parallel instructions, you're better off movups'ing the values to a MMX register instead of using the memory location directly because of the same reason to favor movups over movaps.

DONT SAY I DIDNT WARNED YOU!
0 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement