diff options
author | Matt A. Tobin <email@mattatobin.com> | 2020-11-20 12:37:11 -0500 |
---|---|---|
committer | Matt A. Tobin <email@mattatobin.com> | 2020-11-20 12:37:11 -0500 |
commit | a8a397fbceb78d2338e214e583be4f02797637d1 (patch) | |
tree | d5022470e07e20160618ffaf12320c8bdab772e5 | |
parent | a89597b5db753b369347a3ad4e3e8f6216b1c3ac (diff) | |
download | uxp-a8a397fbceb78d2338e214e583be4f02797637d1.tar.gz |
Issue #1676 - Follow-up: Put js/src (including vm), jit, and wasm back into unified sources.
Function template inflation in intermediate code. The linker problem we hit with the corrupt file was because there were too many function descriptors and relation in the .lib
-rw-r--r-- | js/src/jit/moz.build | 34 | ||||
-rw-r--r-- | js/src/js-config.mozbuild | 2 | ||||
-rw-r--r-- | js/src/moz.build | 27 | ||||
-rw-r--r-- | js/src/wasm/moz.build | 2 |
4 files changed, 38 insertions, 27 deletions
diff --git a/js/src/jit/moz.build b/js/src/jit/moz.build index 0c6c4f3b8c..e8b463112e 100644 --- a/js/src/jit/moz.build +++ b/js/src/jit/moz.build @@ -11,7 +11,7 @@ FINAL_LIBRARY = "js" # Includes should be relative to parent path LOCAL_INCLUDES += ["!..", ".."] -SOURCES += [ +UNIFIED_SOURCES += [ 'AliasAnalysis.cpp', 'AliasAnalysisShared.cpp', 'AlignmentMaskAnalysis.cpp', @@ -83,14 +83,14 @@ SOURCES += [ ] if CONFIG['MOZ_DEBUG']: - SOURCES += ['Disassembler.cpp'] + UNIFIED_SOURCES += ['Disassembler.cpp'] if not CONFIG['ENABLE_ION']: - SOURCES += [ + UNIFIED_SOURCES += [ 'none/Trampoline-none.cpp' ] elif CONFIG['JS_CODEGEN_X86'] or CONFIG['JS_CODEGEN_X64']: - SOURCES += [ + UNIFIED_SOURCES += [ 'x86-shared/Architecture-x86-shared.cpp', 'x86-shared/Assembler-x86-shared.cpp', 'x86-shared/AssemblerBuffer-x86-shared.cpp', @@ -101,11 +101,11 @@ elif CONFIG['JS_CODEGEN_X86'] or CONFIG['JS_CODEGEN_X64']: 'x86-shared/MacroAssembler-x86-shared.cpp', 'x86-shared/MoveEmitter-x86-shared.cpp', ] - SOURCES += [ + UNIFIED_SOURCES += [ 'x86-shared/Disassembler-x86-shared.cpp', # using namespace js::jit::X86Encoding; ] if CONFIG['JS_CODEGEN_X64']: - SOURCES += [ + UNIFIED_SOURCES += [ 'x64/Assembler-x64.cpp', 'x64/Bailouts-x64.cpp', 'x64/BaselineCompiler-x64.cpp', @@ -117,7 +117,7 @@ elif CONFIG['JS_CODEGEN_X86'] or CONFIG['JS_CODEGEN_X64']: 'x64/Trampoline-x64.cpp', ] else: - SOURCES += [ + UNIFIED_SOURCES += [ 'x86/Assembler-x86.cpp', 'x86/Bailouts-x86.cpp', 'x86/BaselineCompiler-x86.cpp', @@ -129,7 +129,7 @@ elif CONFIG['JS_CODEGEN_X86'] or CONFIG['JS_CODEGEN_X64']: 'x86/Trampoline-x86.cpp', ] elif CONFIG['JS_CODEGEN_ARM']: - SOURCES += [ + UNIFIED_SOURCES += [ 'arm/Architecture-arm.cpp', 'arm/Assembler-arm.cpp', 'arm/Bailouts-arm.cpp', @@ -145,16 +145,16 @@ elif CONFIG['JS_CODEGEN_ARM']: 'arm/Trampoline-arm.cpp', ] if CONFIG['JS_SIMULATOR_ARM']: - SOURCES += [ + UNIFIED_SOURCES += [ 'arm/Simulator-arm.cpp' ] elif CONFIG['OS_ARCH'] == 'Darwin': - SOURCES += [ + UNIFIED_SOURCES += [ 'arm/llvm-compiler-rt/arm/aeabi_idivmod.S', 'arm/llvm-compiler-rt/arm/aeabi_uidivmod.S', ] elif CONFIG['JS_CODEGEN_ARM64']: - SOURCES += [ + UNIFIED_SOURCES += [ 'arm64/Architecture-arm64.cpp', 'arm64/Assembler-arm64.cpp', 'arm64/Bailouts-arm64.cpp', @@ -177,14 +177,14 @@ elif CONFIG['JS_CODEGEN_ARM64']: 'arm64/vixl/Utils-vixl.cpp' ] if CONFIG['JS_SIMULATOR_ARM64']: - SOURCES += [ + UNIFIED_SOURCES += [ 'arm64/vixl/Debugger-vixl.cpp', 'arm64/vixl/Logic-vixl.cpp', 'arm64/vixl/MozSimulator-vixl.cpp', 'arm64/vixl/Simulator-vixl.cpp' ] elif CONFIG['JS_CODEGEN_MIPS32'] or CONFIG['JS_CODEGEN_MIPS64']: - SOURCES += [ + UNIFIED_SOURCES += [ 'mips-shared/Architecture-mips-shared.cpp', 'mips-shared/Assembler-mips-shared.cpp', 'mips-shared/Bailouts-mips-shared.cpp', @@ -196,7 +196,7 @@ elif CONFIG['JS_CODEGEN_MIPS32'] or CONFIG['JS_CODEGEN_MIPS64']: 'mips-shared/MoveEmitter-mips-shared.cpp', ] if CONFIG['JS_CODEGEN_MIPS32']: - SOURCES += [ + UNIFIED_SOURCES += [ 'mips32/Architecture-mips32.cpp', 'mips32/Assembler-mips32.cpp', 'mips32/Bailouts-mips32.cpp', @@ -210,11 +210,11 @@ elif CONFIG['JS_CODEGEN_MIPS32'] or CONFIG['JS_CODEGEN_MIPS64']: 'mips32/Trampoline-mips32.cpp', ] if CONFIG['JS_SIMULATOR_MIPS32']: - SOURCES += [ + UNIFIED_SOURCES += [ 'mips32/Simulator-mips32.cpp' ] elif CONFIG['JS_CODEGEN_MIPS64']: - SOURCES += [ + UNIFIED_SOURCES += [ 'mips64/Architecture-mips64.cpp', 'mips64/Assembler-mips64.cpp', 'mips64/Bailouts-mips64.cpp', @@ -228,6 +228,6 @@ elif CONFIG['JS_CODEGEN_MIPS32'] or CONFIG['JS_CODEGEN_MIPS64']: 'mips64/Trampoline-mips64.cpp', ] if CONFIG['JS_SIMULATOR_MIPS64']: - SOURCES += [ + UNIFIED_SOURCES += [ 'mips64/Simulator-mips64.cpp' ] diff --git a/js/src/js-config.mozbuild b/js/src/js-config.mozbuild index 82fb4e53e3..4166c0ad16 100644 --- a/js/src/js-config.mozbuild +++ b/js/src/js-config.mozbuild @@ -3,6 +3,8 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +FILES_PER_UNIFIED_FILE = 6 + # Also set in shell/moz.build DEFINES['ENABLE_SHARED_ARRAY_BUFFER'] = True diff --git a/js/src/moz.build b/js/src/moz.build index a6ee7b7375..9cad8e52e1 100644 --- a/js/src/moz.build +++ b/js/src/moz.build @@ -131,22 +131,18 @@ if not CONFIG['JS_DISABLE_SHELL']: if CONFIG['MOZ_VTUNE']: DIRS += ['vtune'] -SOURCES += [ +UNIFIED_SOURCES += [ 'jsalloc.cpp', 'jsapi.cpp', - 'jsarray.cpp', - 'jsatom.cpp', 'jsbool.cpp', 'jscntxt.cpp', 'jscompartment.cpp', 'jsdate.cpp', - 'jsdtoa.cpp', 'jsexn.cpp', 'jsfriendapi.cpp', 'jsfun.cpp', 'jsgc.cpp', 'jsiter.cpp', - 'jsmath.cpp', 'jsnativestack.cpp', 'jsnum.cpp', 'jsobj.cpp', @@ -156,16 +152,24 @@ SOURCES += [ 'jspropertytree.cpp', 'jsscript.cpp', 'jsstr.cpp', - 'jsutil.cpp', 'jsweakmap.cpp', ] +# Can't be built unified +SOURCES += [ + 'jsarray.cpp', + 'jsatom.cpp', + 'jsdtoa.cpp', + 'jsmath.cpp', + 'jsutil.cpp', +] + # Suppress warnings in third-party code. # We are keeping this in the main moz.build because it is file specific if CONFIG['CLANG_CXX'] or CONFIG['GNU_CXX']: SOURCES['jsdtoa.cpp'].flags += ['-Wno-implicit-fallthrough'] -SOURCES += [ +UNIFIED_SOURCES += [ 'vm/ArgumentsObject.cpp', 'vm/ArrayBufferObject.cpp', 'vm/AsyncFunction.cpp', @@ -185,7 +189,6 @@ SOURCES += [ 'vm/GlobalObject.cpp', 'vm/HelperThreads.cpp', 'vm/Id.cpp', - 'vm/Initialization.cpp', 'vm/Interpreter.cpp', 'vm/JSONParser.cpp', 'vm/MemoryMetrics.cpp', @@ -227,12 +230,18 @@ SOURCES += [ 'vm/Xdr.cpp', ] +# Can't be built unified +SOURCES += [ + 'vm/Initialization.cpp', +] + if CONFIG['JS_POSIX_NSPR']: - SOURCES += [ + UNIFIED_SOURCES += [ 'vm/PosixNSPR.cpp', ] if CONFIG['ENABLE_TRACE_LOGGING']: + # Can't be built unified SOURCES += [ 'vm/TraceLogging.cpp', 'vm/TraceLoggingGraph.cpp', diff --git a/js/src/wasm/moz.build b/js/src/wasm/moz.build index 6a47df3229..5fe046add1 100644 --- a/js/src/wasm/moz.build +++ b/js/src/wasm/moz.build @@ -11,7 +11,7 @@ FINAL_LIBRARY = "js" # Includes should be relative to parent path LOCAL_INCLUDES += ["!..", ".."] -SOURCES += [ +UNIFIED_SOURCES += [ 'AsmJS.cpp', 'WasmBaselineCompile.cpp', 'WasmBinaryFormat.cpp', |