Closed
Bug 507025
Opened 15 years ago
Closed 15 years ago
SSE2 optimizations in mpi_x86_asm.c do not allow to build with VC6 without processor pack, or VC5 or below
Categories
(NSS :: Build, defect)
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: christophe.ravel.bugs, Unassigned)
Details
Build error:
mpi_x86_asm.c
c:/security/securitytip/builds/20090727.1/nssw2000s_WIN/mozilla/security/nss/lib/freebl/mpi/mpi_x86_asm.c(132) : fatal error C1601: unsupported inline assembly opcode
make[4]: *** [WINNT5.0_OPT.OBJ/WINNT_SINGLE_SHLIB/mpi_x86_asm.obj] Error 2
Comment 1•15 years ago
|
||
The workaround is to pull rev 1.2 of freebl/mpi/mpi_x86_asm.c, instead of
rev 1.4, when building with vc6.
Given how easy that is, I don't think we'll fix it.
Maybe we should create a tag named NSS_3_12_3_RTM_VC6
Comment 2•15 years ago
|
||
Nelson,
While pulling that revision would be a temporary fix, I am not sure it's the best one. IMO, the NSS trunk should be buildable with VC6 without pulling alternate tags - some people still use it, as well as older versions of MSVC (I think Wan-Teh uses VC5).
One solution is to #ifdef the SSE2 optimizations in this source file. So if you build with VC6, you wouldn't get them.
Another one is to put the opcode for the SSE2 instructions in binary, if the compiler allows it.
Comment 3•15 years ago
|
||
Good news : I am no longer seeing this build error after I applied my fix for bug 507041 . Marking as a duplicate.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → DUPLICATE
Comment 4•15 years ago
|
||
Actually, that fix may be unrelated. I suspect you are simply running with an old unpatched version of VC6 . The version I have is
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
It is VC6 SP5 + processor pack. The processor pack probably makes all the difference. So this is not a bug in NSS, but a backlevel compiler issue. Of course, this may still break older compilers like VC5 . I'm reopening for that reason.
But for now I would recommend you install the latest VC6 patches.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
Comment 5•15 years ago
|
||
FYI, info on VC6 processor pack is at http://msdn.microsoft.com/en-us/vstudio/aa718349.aspx . You must have SP5 for VC6 to install it first.
Comment 6•15 years ago
|
||
Does anyone still use VC5 or below ? What's our official position on those compilers ? With the code as-is, it won't build with MSVC < VC6 SP5 with processor pack. This may be OK, I just want to make sure it doesn't inconvenience anyone.
Updated•15 years ago
|
Summary: SSE2 optimizations in mpi_x86_asm.c do not allow to build with VC6 → SSE2 optimizations in mpi_x86_asm.c do not allow to build with VC6 without processor pack
Comment 7•15 years ago
|
||
The NSS trunk doesn't need to support VC5 or below.
Comment 8•15 years ago
|
||
Thanks, Wan-Teh. Marking WONTFIX.
Status: REOPENED → RESOLVED
Closed: 15 years ago → 15 years ago
Resolution: --- → WONTFIX
Summary: SSE2 optimizations in mpi_x86_asm.c do not allow to build with VC6 without processor pack → SSE2 optimizations in mpi_x86_asm.c do not allow to build with VC6 without processor pack, or VC5 or below
You need to log in
before you can comment on or make changes to this bug.
Description
•