[ <-- Back ]
CC bug 20110410
Crash on startup with Win opt PGO/SSE2. Other crashes/instabilities.
Reported in Bugzilla as Bug 595653, marked "WORKSFORME" - doesn't work for me, though ;)
Seems to also be the root cause of 20110406-PRBug. (unrelated, even completely disabling SSE2 fr the entire JS engine didn't fix that)
Reporters: n/a
Affects the following:
Builds: All 4.0
builds except x64.
Cause:
Compiler issues for the new Jägermonkey engine when using PGO combined with SSE2.
Details: The
linking phase of javascript when combining PGO with SSE2 causes memory
access errors in certain conditions in the Jägermonkey JS engine. This
is (yet another) PGO compiler bug in MSVC :/
As a result, full optimizations created an instantly crashing browser (memory access error).
Solution: Re-build, replacing arch:SSE2 by arch:SSE specifically for the JS module RegexCompiler.
This will cause a small performance hit compared to full SSE2
optimizations, but is not going to be noticeable in a real-world environment (not even in tests, most likely).
Implementation: Makefile edit in /js/src/Makefile.in:
@end: +# Optimizer bug with MSVC PGO (Bug 595653)
+ifeq (WINNT_1,$(OS_ARCH)_$(MOZ_PROFILE_GENERATE)$(MOZ_PROFILE_USE))
+RegexCompiler.$(OBJ_SUFFIX): RegexCompiler.cpp $(GLOBAL_DEPS)
+ $(REPORT_BUILD)
+ @$(MAKE_DEPS_AUTO_CXX)
+ $(ELOG) $(CCC) $(OUTOPTION)$@ -c $(COMPILE_CXXFLAGS:arch:SSE2=arch:SSE) $(_VPATH_SRCS)
+endif
[ <-- Back ]
|