Starting with OpenSSL 0.9.8f, Windows builds using ms\do_masm.bat generate .asm
files with the MASM
directive XMMWORD.
XMMWORD was added to MASM 8 (Visual Studio C++ 2005).
ref: http://msdn2.microsoft.com/en-us/library/cw0399sf(VS.80).aspx
This prevents building OpenSSL via ms\do_masm.bat with
> [EMAIL PROTECTED] - Thu Oct 18 09:05:32 2007]:
>
> Starting with OpenSSL 0.9.8f, Windows builds using ms\do_masm.bat
> generate .asm files with the MASM
> directive XMMWORD.
>
> XMMWORD was added to MASM 8 (Visual Studio C++ 2005).
> ref: http://msdn2.microsoft.com/en-us/library/cw0399sf(VS.80)
The function BN_nist_mod_384 (in crypto/bn/bn_nist.c) gives wrong results
for some inputs. For example, on input:
0xfffe0002
it yields
0x1
MASM 6.15+ includes support for the SSE2 instructions, like movdqa, movdqu, etc.
It is only the XMMWORD directive that forces the use of the Visual Studio 2005
assembler.
If QWORD is substituted for XMMWORD, MASM 6 can assemble the .asm sources.
Testing OpenSSL built with MASM 6 and this 'QWORD'