Bug 1511429 - Run a test only if no JS jit compilation. r=bbouvier
authorLars T Hansen <lhansen@mozilla.com>
Thu, 03 Jan 2019 13:42:41 +0100
changeset 453214 676b002d0640f8bc91806f65043f5bdf28f93556
parent 453213 5c1a8f06c28b16f7e151ed7f678194a9bda0f5d6
child 453215 86f8236cd20fa9f805cc78b8138b1f7a7fb81220
push id111059
push userlhansen@mozilla.com
push dateThu, 10 Jan 2019 10:47:30 +0000
treeherdermozilla-inbound@676b002d0640 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbbouvier
bugs1511429
milestone66.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1511429 - Run a test only if no JS jit compilation. r=bbouvier We're looking for a specific stack layout here and we'll not run the test if there are jits that may upset the stack. (The alternative would be to add more stack candidates but since we're really only interested in testing write wasm barrier functionality that's not necessary.)
js/src/builtin/TestingFunctions.cpp
js/src/jit-test/tests/wasm/gc/anyref-global-prebarrier.js
--- a/js/src/builtin/TestingFunctions.cpp
+++ b/js/src/builtin/TestingFunctions.cpp
@@ -5895,17 +5895,17 @@ gc::ZealModeHelpText),
 "  Returns whether asm.js compilation is currently available or whether it is disabled\n"
 "  (e.g., by the debugger)."),
 
     JS_FN_HELP("isSimdAvailable", IsSimdAvailable, 0, 0,
 "isSimdAvailable",
 "  Returns true if SIMD extensions are supported on this platform."),
 
     JS_FN_HELP("getJitCompilerOptions", GetJitCompilerOptions, 0, 0,
-"getCompilerOptions()",
+"getJitCompilerOptions()",
 "  Return an object describing some of the JIT compiler options.\n"),
 
     JS_FN_HELP("isAsmJSModule", IsAsmJSModule, 1, 0,
 "isAsmJSModule(fn)",
 "  Returns whether the given value is a function containing \"use asm\" that has been\n"
 "  validated according to the asm.js spec."),
 
     JS_FN_HELP("isAsmJSModuleLoadedFromCache", IsAsmJSModuleLoadedFromCache, 1, 0,
--- a/js/src/jit-test/tests/wasm/gc/anyref-global-prebarrier.js
+++ b/js/src/jit-test/tests/wasm/gc/anyref-global-prebarrier.js
@@ -1,10 +1,17 @@
 // |jit-test| skip-if: !wasmGcEnabled()
 
+// Do not run the test if we're jit-compiling JS, since it's the wasm frames
+// we're interested in and eager JS compilation can upset the test.
+
+opts = getJitCompilerOptions();
+if (opts['ion.enable'] || opts['baseline.enable'])
+  quit();
+
 const { startProfiling, endProfiling, assertEqPreciseStacks, isSingleStepProfilingEnabled } = WasmHelpers;
 
 let e = wasmEvalText(`(module
     (gc_feature_opt_in 2)
     (global $g (mut anyref) (ref.null))
     (func (export "set") (param anyref) get_local 0 set_global $g)
 )`).exports;