News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Fortran + MASM (using SSE2)

Started by desmo3re, October 25, 2007, 09:22:34 AM

Previous topic - Next topic

desmo3re

Solution: a previous MUL operation used edx also if there was no overflaw. So I rewrite the correct address in edx and there are no more access violations! :U
Now I have to write some value in the vector to test if the routine writes the result in the corrept positions!

desmo3re

How can I calculate the absolute value of a double precision floating stored in the low part of an XMM register? I've seen that there are FABS and PABSB/D/W instructions, but FABS acts on ST(0) and PABS only on integer values.
Do you have any suggestion?

Rockoon

Should just be a simple bitwise AND with 7FFFFFFFh on float32's ..
When C++ compilers can be coerced to emit rcl and rcr, I *might* consider using one.

desmo3re

Quote from: Rockoon on October 28, 2007, 06:46:32 AM
Should just be a simple bitwise AND with 7FFFFFFFh on float32's ..
Yesterday night I thought to this simple solution, but I was no more in front of my computer to see the manual. So I can write the correct 128 bit mask in a XMM register and perform an ANDPD instruction with my data contained in another XMM register. I think that this should be the right solution, I will make a test.
Thank you one more time Rockoon!