Bug 1481097 - js: Build Array.cpp and JSAtom.cpp in unified mode. r?djvj draft
authorChris Peterson <cpeterson@mozilla.com>
Sun, 22 Jul 2018 00:09:46 -0700
changeset 826869 9560dadb96c377db6e8ee136a1f0c3ada0789979
parent 826868 62cb37da55c3812b166205ca7c0de2878a6ccab7
child 826870 114a3bb0d922d148b1d3605214a8e27bd71e9646
push id118399
push usercpeterson@mozilla.com
push dateSun, 05 Aug 2018 22:49:36 +0000
reviewersdjvj
bugs1481097, 942421, 1444274
milestone63.0a1
Bug 1481097 - js: Build Array.cpp and JSAtom.cpp in unified mode. r?djvj This gcc 4.8.2 workaround (from bug 942421) is no longer needed because Firefox currently requires gcc 6.1 or later (as of bug 1444274). MozReview-Commit-ID: JSFcqxpkfxY
js/src/moz.build
--- a/js/src/moz.build
+++ b/js/src/moz.build
@@ -172,16 +172,17 @@ EXPORTS.js += [
     '../public/Utility.h',
     '../public/Value.h',
     '../public/Vector.h',
     '../public/WeakMapPtr.h',
     '../public/Wrapper.h',
 ]
 
 UNIFIED_SOURCES += [
+    'builtin/Array.cpp',
     'builtin/AtomicsObject.cpp',
     'builtin/Boolean.cpp',
     'builtin/DataViewObject.cpp',
     'builtin/Eval.cpp',
     'builtin/intl/Collator.cpp',
     'builtin/intl/CommonFunctions.cpp',
     'builtin/intl/DateTimeFormat.cpp',
     'builtin/intl/IntlObject.cpp',
@@ -362,16 +363,17 @@ UNIFIED_SOURCES += [
     'vm/ForOfIterator.cpp',
     'vm/GeckoProfiler.cpp',
     'vm/GeneratorObject.cpp',
     'vm/GlobalObject.cpp',
     'vm/HelperThreads.cpp',
     'vm/Id.cpp',
     'vm/Initialization.cpp',
     'vm/Iteration.cpp',
+    'vm/JSAtom.cpp',
     'vm/JSContext.cpp',
     'vm/JSFunction.cpp',
     'vm/JSObject.cpp',
     'vm/JSONParser.cpp',
     'vm/JSONPrinter.cpp',
     'vm/JSScript.cpp',
     'vm/MemoryMetrics.cpp',
     'vm/NativeObject.cpp',
@@ -423,18 +425,16 @@ UNIFIED_SOURCES += [
     'wasm/WasmSignalHandlers.cpp',
     'wasm/WasmStubs.cpp',
     'wasm/WasmTable.cpp',
     'wasm/WasmTextToBinary.cpp',
     'wasm/WasmTypes.cpp',
     'wasm/WasmValidate.cpp'
 ]
 
-# builtin/Array.cpp and vm/JSAtom.cpp cannot be built in unified mode because
-#   xpcshell is broken during packaging when compiled with gcc-4.8.2
 # builtin/RegExp.cpp cannot be built in unified mode because it causes huge
 #   win32 test slowdowns
 # frontend/Parser.cpp cannot be built in unified mode because of explicit
 #   template instantiations.
 # jsmath.cpp cannot be built in unified mode because it needs to re-#define the
 #   RtlGenRandom declaration's calling convention in <ntsecapi.h> on Windows.
 # jsutil.cpp cannot be built in unified mode because it is needed for
 #   check-vanilla-allocations.
@@ -444,25 +444,23 @@ UNIFIED_SOURCES += [
 # perf/ProfilingStack.cpp cannot be built in unified mode because we want to
 #   suppress warnings due to usage of the system allocator, and this allows it
 #   to have a deterministic object name.
 # util/DoubleToString.cpp cannot be built in unified mode because we want to
 #   suppress compiler warnings in third-party dtoa.c.
 # vm/Interpreter.cpp is gigantic and destroys incremental build times for any
 #   files unlucky enough to be unified with it.
 SOURCES += [
-    'builtin/Array.cpp',
     'builtin/RegExp.cpp',
     'frontend/Parser.cpp',
     'gc/StoreBuffer.cpp',
     'jsmath.cpp',
     'jsutil.cpp',
     'util/DoubleToString.cpp',
     'vm/Interpreter.cpp',
-    'vm/JSAtom.cpp',
     'vm/ProfilingStack.cpp',
 ]
 
 if CONFIG['ENABLE_BIGINT']:
     SOURCES += [
         'builtin/BigInt.cpp',
         'vm/BigIntType.cpp',
     ]