Bug 1496297 - Use |jit-test| skip-if as appropriate in jit-test/tests/debug/ (r=jorendorff)
authorEric Faust <efausbmo@gmail.com>
Tue, 09 Oct 2018 15:41:50 -0700
changeset 496121 cb0c1944852bbeaebc2f023a6d5a60a4a2a7f403
parent 496120 4157315ccd54091dbc9e64bb7a744c6c9689638d
child 496122 bb27fccdb19cf4a76b314ed4314f20651af6224a
push id9984
push userffxbld-merge
push dateMon, 15 Oct 2018 21:07:35 +0000
treeherdermozilla-beta@183d27ea8570 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjorendorff
bugs1496297
milestone64.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 1496297 - Use |jit-test| skip-if as appropriate in jit-test/tests/debug/ (r=jorendorff)
js/src/jit-test/tests/debug/Debugger-allowUnobservedAsmJS-02.js
js/src/jit-test/tests/debug/Debugger-onNewPromise-01.js
js/src/jit-test/tests/debug/Debugger-onNewPromise-02.js
js/src/jit-test/tests/debug/Debugger-onNewPromise-03.js
js/src/jit-test/tests/debug/Debugger-onNewPromise-04.js
js/src/jit-test/tests/debug/Debugger-onNewPromise-05.js
js/src/jit-test/tests/debug/Debugger-onNewPromise-06.js
js/src/jit-test/tests/debug/Debugger-onNewPromise-07.js
js/src/jit-test/tests/debug/Debugger-onPromiseSettled-01.js
js/src/jit-test/tests/debug/Debugger-onPromiseSettled-02.js
js/src/jit-test/tests/debug/Debugger-onPromiseSettled-03.js
js/src/jit-test/tests/debug/Debugger-onPromiseSettled-04.js
js/src/jit-test/tests/debug/Debugger-onPromiseSettled-05.js
js/src/jit-test/tests/debug/Debugger-onPromiseSettled-06.js
js/src/jit-test/tests/debug/Memory-drainAllocationsLog-13.js
js/src/jit-test/tests/debug/Memory-drainAllocationsLog-15.js
js/src/jit-test/tests/debug/Script-format-01.js
js/src/jit-test/tests/debug/Source-element-03.js
js/src/jit-test/tests/debug/Source-introductionType.js
js/src/jit-test/tests/debug/Source-text-lazy.js
js/src/jit-test/tests/debug/breakpoint-oom-01.js
js/src/jit-test/tests/debug/bug-1238610.js
js/src/jit-test/tests/debug/bug-1248162.js
js/src/jit-test/tests/debug/bug-1260725.js
js/src/jit-test/tests/debug/bug1108159.js
js/src/jit-test/tests/debug/bug1216261.js
js/src/jit-test/tests/debug/bug1219905.js
js/src/jit-test/tests/debug/bug1240546.js
js/src/jit-test/tests/debug/bug1240803.js
js/src/jit-test/tests/debug/bug1242111.js
js/src/jit-test/tests/debug/bug1245862.js
js/src/jit-test/tests/debug/bug1251919.js
js/src/jit-test/tests/debug/bug1254123.js
js/src/jit-test/tests/debug/bug1254190.js
js/src/jit-test/tests/debug/bug1254578.js
js/src/jit-test/tests/debug/bug1257045.js
js/src/jit-test/tests/debug/bug1264961.js
js/src/jit-test/tests/debug/bug1272908.js
js/src/jit-test/tests/debug/bug1300528.js
js/src/jit-test/tests/debug/bug1331064.js
js/src/jit-test/tests/debug/bug1332493.js
js/src/jit-test/tests/debug/bug1343579.js
js/src/jit-test/tests/debug/bug1351059.js
js/src/jit-test/tests/debug/bug1370905.js
js/src/jit-test/tests/debug/bug1404710.js
js/src/jit-test/tests/debug/bug1434391.js
js/src/jit-test/tests/debug/inspect-wrapped-promise.js
js/src/jit-test/tests/debug/onNewScript-off-main-thread-01.js
js/src/jit-test/tests/debug/onNewScript-off-main-thread-02.js
js/src/jit-test/tests/debug/wasm-01.js
js/src/jit-test/tests/debug/wasm-02.js
js/src/jit-test/tests/debug/wasm-03.js
js/src/jit-test/tests/debug/wasm-04.js
js/src/jit-test/tests/debug/wasm-06-onEnterFrame-null.js
js/src/jit-test/tests/debug/wasm-06-onPop-null.js
js/src/jit-test/tests/debug/wasm-06.js
js/src/jit-test/tests/debug/wasm-07.js
js/src/jit-test/tests/debug/wasm-08.js
js/src/jit-test/tests/debug/wasm-09.js
js/src/jit-test/tests/debug/wasm-10.js
js/src/jit-test/tests/debug/wasm-11.js
js/src/jit-test/tests/debug/wasm-12.js
js/src/jit-test/tests/debug/wasm-binary-sources.js
js/src/jit-test/tests/debug/wasm-breakpoint.js
js/src/jit-test/tests/debug/wasm-get-return.js
js/src/jit-test/tests/debug/wasm-getAllColumnOffsets.js
js/src/jit-test/tests/debug/wasm-onExceptionUnwind-gc.js
js/src/jit-test/tests/debug/wasm-responseurls.js
js/src/jit-test/tests/debug/wasm-sourceMappingURL.js
js/src/jit-test/tests/debug/wasm-step.js
--- a/js/src/jit-test/tests/debug/Debugger-allowUnobservedAsmJS-02.js
+++ b/js/src/jit-test/tests/debug/Debugger-allowUnobservedAsmJS-02.js
@@ -1,14 +1,14 @@
+// |jit-test| skip-if: helperThreadCount() === 0
+
 // Debugger.allowUnobservedAsmJS with off-thread parsing.
 
 load(libdir + "asm.js");
 
-if (helperThreadCount() == 0)
-    quit();
 
 var g = newGlobal();
 g.parent = this;
 g.eval("dbg = new Debugger(parent);");
 
 assertEq(g.dbg.allowUnobservedAsmJS, false);
 
 enableLastWarning();
--- a/js/src/jit-test/tests/debug/Debugger-onNewPromise-01.js
+++ b/js/src/jit-test/tests/debug/Debugger-onNewPromise-01.js
@@ -1,12 +1,10 @@
 // Test that the onNewPromise hook gets called when promises are allocated in
 // the scope of debuggee globals.
-if (!('Promise' in this))
-    quit(0);
 
 var g = newGlobal();
 var dbg = new Debugger();
 var gw = dbg.addDebuggee(g);
 
 
 let promisesFound = [];
 dbg.onNewPromise = p => { promisesFound.push(p); };
--- a/js/src/jit-test/tests/debug/Debugger-onNewPromise-02.js
+++ b/js/src/jit-test/tests/debug/Debugger-onNewPromise-02.js
@@ -1,11 +1,9 @@
 // onNewPromise handlers fire, until they are removed.
-if (!('Promise' in this))
-    quit(0);
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 var log;
 
 log = '';
 new g.Promise(function (){});
 assertEq(log, '');
--- a/js/src/jit-test/tests/debug/Debugger-onNewPromise-03.js
+++ b/js/src/jit-test/tests/debug/Debugger-onNewPromise-03.js
@@ -1,11 +1,9 @@
 // onNewPromise handlers on different Debugger instances are independent.
-if (!('Promise' in this))
-    quit(0);
 
 var g = newGlobal();
 var dbg1 = new Debugger(g);
 var log1;
 function h1(promise) {
   log1 += 'n';
   assertEq(promise.seen, undefined);
   promise.seen = true;
--- a/js/src/jit-test/tests/debug/Debugger-onNewPromise-04.js
+++ b/js/src/jit-test/tests/debug/Debugger-onNewPromise-04.js
@@ -1,12 +1,9 @@
 // An onNewPromise handler can disable itself.
-if (!('Promise' in this))
-    quit(0);
-
 var g = newGlobal();
 var dbg = new Debugger(g);
 var log;
 
 dbg.onNewPromise = function (promise) {
   log += 'n';
   dbg.onNewPromise = undefined;
 };
--- a/js/src/jit-test/tests/debug/Debugger-onNewPromise-05.js
+++ b/js/src/jit-test/tests/debug/Debugger-onNewPromise-05.js
@@ -1,13 +1,10 @@
 // Creating a promise within an onNewPromise handler causes a recursive handler
 // invocation.
-if (!('Promise' in this))
-    quit(0);
-
 var g = newGlobal();
 var dbg = new Debugger();
 var gw = dbg.addDebuggee(g);
 var log;
 var depth;
 
 dbg.onNewPromise = function (promise) {
   log += '('; depth++;
--- a/js/src/jit-test/tests/debug/Debugger-onNewPromise-06.js
+++ b/js/src/jit-test/tests/debug/Debugger-onNewPromise-06.js
@@ -1,11 +1,9 @@
 // Resumption values from onNewPromise handlers are disallowed.
-if (!('Promise' in this))
-    quit(0);
 
 load(libdir + 'asserts.js');
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 var log;
 
 dbg.onNewPromise = function (g) { log += 'n'; return undefined; };
--- a/js/src/jit-test/tests/debug/Debugger-onNewPromise-07.js
+++ b/js/src/jit-test/tests/debug/Debugger-onNewPromise-07.js
@@ -1,12 +1,10 @@
 // Errors in onNewPromise handlers are reported correctly, and don't mess up the
 // promise creation.
-if (!('Promise' in this))
-    quit(0);
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 let e;
 dbg.uncaughtExceptionHook = ee => { e = ee; };
 dbg.onNewPromise = () => { throw new Error("woops!"); };
 
--- a/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-01.js
+++ b/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-01.js
@@ -1,11 +1,9 @@
 // Test that the onPromiseSettled hook gets called when a promise settles.
-if (!('Promise' in this))
-    quit(0);
 
 var g = newGlobal();
 var dbg = new Debugger();
 var gw = dbg.addDebuggee(g);
 
 let log = "";
 let pw;
 dbg.onPromiseSettled = pw_ => {
--- a/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-02.js
+++ b/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-02.js
@@ -1,11 +1,9 @@
 // onPromiseSettled handlers fire, until they are removed.
-if (!('Promise' in this))
-    quit(0);
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 var log;
 
 log = '';
 g.settlePromiseNow(new g.Promise(function (){}));
 assertEq(log, '');
--- a/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-03.js
+++ b/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-03.js
@@ -1,12 +1,9 @@
 // onPromiseSettled handlers on different Debugger instances are independent.
-if (!('Promise' in this))
-    quit(0);
-
 var g = newGlobal();
 var dbg1 = new Debugger(g);
 var log1;
 function h1(promise) {
   log1 += 's';
   assertEq(promise.seen, undefined);
   promise.seen = true;
 }
--- a/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-04.js
+++ b/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-04.js
@@ -1,12 +1,9 @@
 // An onPromiseSettled handler can disable itself.
-if (!('Promise' in this))
-    quit(0);
-
 var g = newGlobal();
 var dbg = new Debugger(g);
 var log;
 
 dbg.onPromiseSettled = function (promise) {
   log += 's';
   dbg.onPromiseSettled = undefined;
 };
--- a/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-05.js
+++ b/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-05.js
@@ -1,12 +1,10 @@
 // Settling a promise within an onPromiseSettled handler causes a recursive
 // handler invocation.
-if (!('Promise' in this))
-    quit(0);
 
 var g = newGlobal();
 var dbg = new Debugger();
 var gw = dbg.addDebuggee(g);
 var log;
 var depth;
 
 dbg.onPromiseSettled = function (promise) {
--- a/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-06.js
+++ b/js/src/jit-test/tests/debug/Debugger-onPromiseSettled-06.js
@@ -1,11 +1,9 @@
 // Resumption values from onPromiseSettled handlers are disallowed.
-if (!('Promise' in this))
-    quit(0);
 
 load(libdir + 'asserts.js');
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 var log;
 
 dbg.onPromiseSettled = function (g) { log += 's'; return undefined; };
--- a/js/src/jit-test/tests/debug/Memory-drainAllocationsLog-13.js
+++ b/js/src/jit-test/tests/debug/Memory-drainAllocationsLog-13.js
@@ -1,16 +1,14 @@
+// |jit-test| skip-if: helperThreadCount() === 0
+
 // Test that we don't crash while logging allocations and there is
 // off-main-thread compilation. OMT compilation will allocate functions and
 // regexps, but we just punt on measuring that accurately.
 
-if (helperThreadCount() === 0) {
-  quit(0);
-}
-
 const root = newGlobal();
 root.eval("this.dbg = new Debugger()");
 root.dbg.addDebuggee(this);
 root.dbg.memory.trackingAllocationSites = true;
 
 offThreadCompileScript(
   "function foo() {\n" +
   "  print('hello world');\n" +
--- a/js/src/jit-test/tests/debug/Memory-drainAllocationsLog-15.js
+++ b/js/src/jit-test/tests/debug/Memory-drainAllocationsLog-15.js
@@ -1,12 +1,9 @@
 // Test drainAllocationsLog() and [[Class]] names.
-if (!('Promise' in this))
-    quit(0);
-
 const root = newGlobal();
 const dbg = new Debugger();
 const wrappedRoot = dbg.addDebuggee(root)
 
 root.eval(
   `
   this.tests = [
     { expected: "Object",    test: () => new Object    },
--- a/js/src/jit-test/tests/debug/Script-format-01.js
+++ b/js/src/jit-test/tests/debug/Script-format-01.js
@@ -1,22 +1,18 @@
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
+
 // Tests that JavaScript scripts have a "js" format and wasm scripts have a
 // "wasm" format.
 
-if (!wasmDebuggingIsSupported())
-    quit(0);
-
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 var gotScript;
 dbg.onNewScript = (script) => {
   gotScript = script;
 };
 
 g.eval(`(() => {})()`);
 assertEq(gotScript.format, "js");
 
-if (!wasmIsSupported())
-  quit();
-
 g.eval(`o = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func) (export "" 0))')));`);
 assertEq(gotScript.format, "wasm");
--- a/js/src/jit-test/tests/debug/Source-element-03.js
+++ b/js/src/jit-test/tests/debug/Source-element-03.js
@@ -1,14 +1,13 @@
+// |jit-test| skip-if: helperThreadCount() === 0
+
 // Owning elements and attribute names are attached to scripts compiled
 // off-thread.
 
-if (helperThreadCount() === 0)
-  quit(0);
-
 var g = newGlobal();
 var dbg = new Debugger;
 var gDO = dbg.addDebuggee(g);
 
 var elt = new g.Object;
 var eltDO = gDO.makeDebuggeeValue(elt);
 
 var log = '';
--- a/js/src/jit-test/tests/debug/Source-introductionType.js
+++ b/js/src/jit-test/tests/debug/Source-introductionType.js
@@ -1,12 +1,11 @@
-// Check that scripts' introduction types are properly marked.
+// |jit-test| skip-if: helperThreadCount() === 0
 
-if (helperThreadCount() === 0)
-  quit(0);
+// Check that scripts' introduction types are properly marked.
 
 var g = newGlobal();
 var dbg = new Debugger();
 var gDO = dbg.addDebuggee(g);
 var log;
 
 // (Indirect) eval.
 dbg.onDebuggerStatement = function (frame) {
--- a/js/src/jit-test/tests/debug/Source-text-lazy.js
+++ b/js/src/jit-test/tests/debug/Source-text-lazy.js
@@ -1,18 +1,17 @@
+// |jit-test| skip-if: typeof withSourceHook !== 'function'
+// withSourceHook isn't defined if you pass the shell the --fuzzing-safe
+// option. Skip this test silently, to avoid spurious failures.
+
 /*
  * Debugger.Source.prototype.text should correctly retrieve the source for
  * code compiled with CompileOptions::LAZY_SOURCE.
  */
 
-// withSourceHook isn't defined if you pass the shell the --fuzzing-safe
-// option. Skip this test silently, to avoid spurious failures.
-if (typeof withSourceHook != 'function')
-  quit(0);
-
 let g = newGlobal();
 let dbg = new Debugger(g);
 
 function test(source) {
   // To ensure that we're getting the value the source hook returns, make
   // it differ from the actual source.
   let frobbed = source.replace(/debugger/, 'reggubed');
   let log = '';
--- a/js/src/jit-test/tests/debug/breakpoint-oom-01.js
+++ b/js/src/jit-test/tests/debug/breakpoint-oom-01.js
@@ -1,16 +1,15 @@
+// |jit-test| skip-if: !('oomTest' in this)
+
 // Test for OOM hitting a breakpoint in a generator.
 //
 // (The purpose is to test OOM-handling in the code that creates the
 // Debugger.Frame object and associates it with the generator object.)
 
-if (!('oomTest' in this))
-    quit();
-
 let g = newGlobal();
 g.eval(`\
     function* gen(x) {  // line 1
         x++;            // 2
         yield x;        // 3
     }                   // 4
 `);
 
--- a/js/src/jit-test/tests/debug/bug-1238610.js
+++ b/js/src/jit-test/tests/debug/bug-1238610.js
@@ -1,15 +1,9 @@
-// |jit-test| allow-oom
-
-if (!('oomAfterAllocations' in this))
-    quit();
-
-if (helperThreadCount() === 0)
-    quit(0);
+// |jit-test| allow-oom; skip-if: !('oomAfterAllocations' in this) || helperThreadCount() === 0
 
 lfcode = new Array();
 dbg = Debugger();
 dbg.onEnterFrame = function() {};
 g = newGlobal();
 lfcode.push(`
   oomAfterAllocations(100);
   new Number();
--- a/js/src/jit-test/tests/debug/bug-1248162.js
+++ b/js/src/jit-test/tests/debug/bug-1248162.js
@@ -1,12 +1,9 @@
-// |jit-test| allow-oom
-
-if (typeof oomTest !== "function")
-  quit();
+// |jit-test| allow-oom; skip-if: !('oomTest' in this)
 
 // Adapted from randomly chosen test: js/src/jit-test/tests/debug/Debugger-onNewGlobalObject-01.js
 for (var i = 0; i < 9; ++i) {
   var dbg = new Debugger;
   dbg.onNewGlobalObject = function() {};
 }
 // jsfunfuzz-generated
 oomTest(function() {
--- a/js/src/jit-test/tests/debug/bug-1260725.js
+++ b/js/src/jit-test/tests/debug/bug-1260725.js
@@ -1,10 +1,9 @@
-if (!('oomTest' in this))
-  quit()
+// |jit-test| skip-if: !('oomTest' in this)
 
 var dbg = new Debugger;
 dbg.onNewGlobalObject = function(global) {
   dbg.memory.takeCensus({});
 };
 oomTest(function() {
   newGlobal({sameZoneAs: this})
 });
--- a/js/src/jit-test/tests/debug/bug1108159.js
+++ b/js/src/jit-test/tests/debug/bug1108159.js
@@ -1,12 +1,9 @@
-// |jit-test| slow
-
-if (helperThreadCount() == 0)
-  quit(0);
+// |jit-test| slow; skip-if: helperThreadCount() === 0
 
 var s = '';
 for (var i = 0; i < 70000; i++)
  {
     s += 'function x' + i + '() { x' + i + '(); }\n';
 }
 evaluate(s);
 var g = newGlobal();
--- a/js/src/jit-test/tests/debug/bug1216261.js
+++ b/js/src/jit-test/tests/debug/bug1216261.js
@@ -1,12 +1,9 @@
-// |jit-test| exitstatus: 3
-
-if (!('oomAfterAllocations' in this))
-    quit(3);
+// |jit-test| exitstatus: 3; skip-if: !('oomAfterAllocations' in this)
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 dbg.onDebuggerStatement = function(frame) {
     oomAfterAllocations(5);
     // OOMs here, and possibly again in the error reporter when trying to
     // report the OOM, so the shell just exits with code 3.
     frame.older.eval("escaped = function() { return y }");
--- a/js/src/jit-test/tests/debug/bug1219905.js
+++ b/js/src/jit-test/tests/debug/bug1219905.js
@@ -1,14 +1,11 @@
-// |jit-test| allow-oom
+// |jit-test| allow-oom; skip-if: !('oomTest' in this)
 
 // We need allow-oom here because the debugger reports an uncaught exception if
 // it hits OOM calling the exception unwind hook. This causes the shell to exit
 // with the OOM reason.
 
-if (!('oomTest' in this))
-    quit();
-
 var g = newGlobal();
 g.parent = this;
 g.eval("new Debugger(parent).onExceptionUnwind = function() {}");
 let finished = false;
 oomTest(() => l, false);
--- a/js/src/jit-test/tests/debug/bug1240546.js
+++ b/js/src/jit-test/tests/debug/bug1240546.js
@@ -1,12 +1,9 @@
-// |jit-test| allow-oom
-
-if (!('oomAfterAllocations' in this))
-  quit();
+// |jit-test| allow-oom; skip-if: !('oomAfterAllocations' in this)
 
 var g = newGlobal();
 g.debuggeeGlobal = this;
 g.eval("(" + function() {
     oomAfterAllocations(100);
     var dbg = Debugger(debuggeeGlobal);
     dbg.onEnterFrame = function(frame) {}
 } + ")()");
--- a/js/src/jit-test/tests/debug/bug1240803.js
+++ b/js/src/jit-test/tests/debug/bug1240803.js
@@ -1,13 +1,9 @@
-// |jit-test| allow-oom
-
-
-if (!('oomAfterAllocations' in this))
-  quit();
+// |jit-test| allow-oom; skip-if: !('oomAfterAllocations' in this)
 
 (function() {
     g = newGlobal()
     dbg = new Debugger
     g.toggle = function(d) {
         if (d) {
             dbg.addDebuggee(g);
             dbg.getNewestFrame();
--- a/js/src/jit-test/tests/debug/bug1242111.js
+++ b/js/src/jit-test/tests/debug/bug1242111.js
@@ -1,11 +1,8 @@
-// |jit-test| allow-oom
-
-if (!('oomAfterAllocations' in this))
-  quit();
+// |jit-test| allow-oom; skip-if: !('oomAfterAllocations' in this)
 
 var g = newGlobal();
 g.debuggeeGlobal = [];
 g.eval("(" + function() {
     oomAfterAllocations(57);
     Debugger(debuggeeGlobal).onEnterFrame = function() {}
 } + ")()");
--- a/js/src/jit-test/tests/debug/bug1245862.js
+++ b/js/src/jit-test/tests/debug/bug1245862.js
@@ -1,12 +1,9 @@
-// |jit-test| allow-oom
-
-if (!('oomAfterAllocations' in this))
-  quit();
+// |jit-test| allow-oom; skip-if: !('oomAfterAllocations' in this)
 
 var g = newGlobal();
 var dbg = new Debugger;
 g.h = function h(d) {
   if (d) {
     dbg.addDebuggee(g);
     var f = dbg.getNewestFrame().older;
     f.st_p1((oomAfterAllocations(10)) + "foo = 'string of 42'");
--- a/js/src/jit-test/tests/debug/bug1251919.js
+++ b/js/src/jit-test/tests/debug/bug1251919.js
@@ -1,10 +1,9 @@
-if (!('oomTest' in this))
-    quit();
+// |jit-test| skip-if: !('oomTest' in this)
 
 // jsfunfuzz-generated
 fullcompartmentchecks(true);
 // Adapted from randomly chosen test: js/src/jit-test/tests/debug/bug-1248162.js
 var dbg = new Debugger;
 dbg.onNewGlobalObject = function() {};
 oomTest(function() {
     newGlobal({sameZoneAs: this});
--- a/js/src/jit-test/tests/debug/bug1254123.js
+++ b/js/src/jit-test/tests/debug/bug1254123.js
@@ -1,10 +1,9 @@
-if (!('oomTest' in this))
-  quit();
+// |jit-test| skip-if: !('oomTest' in this)
 
 evaluate(`
 function ERROR(msg) {
   throw new Error("boom");
 }
 for (var i = 0; i < 9; ++ i) {
   var dbg = new Debugger;
   dbg.onNewGlobalObject = ERROR;
--- a/js/src/jit-test/tests/debug/bug1254190.js
+++ b/js/src/jit-test/tests/debug/bug1254190.js
@@ -1,12 +1,9 @@
-// |jit-test| slow
-
-if (!('oomTest' in this))
-    quit();
+// |jit-test| slow; skip-if: !('oomTest' in this)
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 dbg.onNewScript = function (s) {
   log += dbg.findScripts({ source: s.source }).length;
 }
 log = "";
 oomTest(() => {
--- a/js/src/jit-test/tests/debug/bug1254578.js
+++ b/js/src/jit-test/tests/debug/bug1254578.js
@@ -1,12 +1,9 @@
-// |jit-test| slow
-
-if (!('oomTest' in this))
-    quit();
+// |jit-test| slow; skip-if: !('oomTest' in this)
 
 var g = newGlobal();
 g.debuggeeGlobal = this;
 g.eval("(" + function() {
     dbg = new Debugger(debuggeeGlobal);
     dbg.onExceptionUnwind = function(frame, exc) {
         var s = '!';
         for (var f = frame; f; f = f.older)
--- a/js/src/jit-test/tests/debug/bug1257045.js
+++ b/js/src/jit-test/tests/debug/bug1257045.js
@@ -1,10 +1,9 @@
-if (!wasmDebuggingIsSupported())
-  quit();
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
 
 fullcompartmentchecks(true);
 var g = newGlobal();
 var dbg = new Debugger(g);
 dbg.onNewScript = (function(script) {
     s = script;
 })
 g.eval(`new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func) (export "" 0))')));`);
--- a/js/src/jit-test/tests/debug/bug1264961.js
+++ b/js/src/jit-test/tests/debug/bug1264961.js
@@ -1,12 +1,9 @@
-// |jit-test| slow;
-
-if (!('oomTest' in this))
-  quit();
+// |jit-test| slow; skip-if: !('oomTest' in this)
 
 loadFile(`
   var o = {}
   var global = this;
   var p = new Proxy(o, {
     "deleteProperty": function (await , key) {
       var g = newGlobal({sameZoneAs: this});
       g.parent = global;
--- a/js/src/jit-test/tests/debug/bug1272908.js
+++ b/js/src/jit-test/tests/debug/bug1272908.js
@@ -1,12 +1,9 @@
-// |jit-test| slow
-
-if (!('oomTest' in this))
-    quit();
+// |jit-test| slow; skip-if: !('oomTest' in this)
 
 // Adapted from randomly chosen test: js/src/jit-test/tests/modules/bug-1233915.js
 g = newGlobal();
 g.parent = this;
 g.eval("(" + function() {
     Debugger(parent).onExceptionUnwind = function(frame) {
     frame.eval("")
     } } + ")()");
--- a/js/src/jit-test/tests/debug/bug1300528.js
+++ b/js/src/jit-test/tests/debug/bug1300528.js
@@ -1,12 +1,11 @@
-load(libdir + "asserts.js");
+// |jit-test| skip-if: helperThreadCount() === 0
 
-if (helperThreadCount() === 0)
-  quit(0);
+load(libdir + "asserts.js");
 
 function BigInteger(a, b, c) {}
 function montConvert(x) {
     var r = new BigInteger(null);
     return r;
 }
 var ba = new Array();
 a = new BigInteger(ba);
--- a/js/src/jit-test/tests/debug/bug1331064.js
+++ b/js/src/jit-test/tests/debug/bug1331064.js
@@ -1,15 +1,12 @@
-// |jit-test| test-also-no-wasm-baseline; exitstatus: 3
+// |jit-test| test-also-no-wasm-baseline; exitstatus: 3; skip-if: !wasmDebuggingIsSupported()
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-    quit(3);
-
 var g = newGlobal();
 g.parent = this;
 g.eval("new Debugger(parent).onExceptionUnwind = function () {  some_error; };");
 
 var module = new WebAssembly.Module(wasmTextToBinary(`
 (module
     (import $imp "a" "b" (result i32))
     (func $call (result i32) (call 0))
--- a/js/src/jit-test/tests/debug/bug1332493.js
+++ b/js/src/jit-test/tests/debug/bug1332493.js
@@ -1,20 +1,14 @@
-// |jit-test| test-also-no-wasm-baseline; exitstatus: 3
+// |jit-test| test-also-no-wasm-baseline; exitstatus: 3; skip-if: !wasmDebuggingIsSupported()
 // Checking in debug frame is initialized properly during stack overflow.
 
-if (!wasmDebuggingIsSupported())
-    quit(3);
-
 var dbg;
 (function () { dbg = new (newGlobal().Debugger)(this); })();
 
-if (!wasmIsSupported())
-     throw "TestComplete";
-
 var m = new WebAssembly.Module(wasmTextToBinary(`(module
     (import "a" "b" (result f64))
     ;; function that allocated large space for locals on the stack
     (func (export "f") ${Array(200).join("(param f64)")} (result f64) (call 0))
 )`));
 var f = () => i.exports.f();
 var i = new WebAssembly.Instance(m, {a: {b: f}});
 f();
--- a/js/src/jit-test/tests/debug/bug1343579.js
+++ b/js/src/jit-test/tests/debug/bug1343579.js
@@ -1,16 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 // Checking if Debugger.Script.isInCatchScope return false for wasm.
 
 load(libdir + "wasm.js");
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 var results;
 wasmRunWithDebugger(
     '(module (memory 1) ' +
     '(func $func0 i32.const 1000000 i32.load drop) ' +
     '(func (export "test") call $func0))',
     undefined,
     function ({dbg, wasmScript}) {
         results = [];
--- a/js/src/jit-test/tests/debug/bug1351059.js
+++ b/js/src/jit-test/tests/debug/bug1351059.js
@@ -1,16 +1,15 @@
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
+
 // Tests that onEnterFrame events are enabled when Debugger callbacks set
 // before Instance creation.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-  quit();
-
 var g = newGlobal();
 g.parent = this;
 g.onEnterFrameCalled = false;
 g.eval(`
     var dbg = new Debugger(parent);
     dbg.onEnterFrame = frame => {
       onEnterFrameCalled = true;
     };
--- a/js/src/jit-test/tests/debug/bug1370905.js
+++ b/js/src/jit-test/tests/debug/bug1370905.js
@@ -1,12 +1,9 @@
-// |jit-test| allow-oom
-
-if (!('oomTest' in this))
-    quit();
+// |jit-test| allow-oom; skip-if: !('oomTest' in this)
 
 function x() {
     var global = newGlobal({sameZoneAs: this});
     global.eval('function f() { debugger; }');
     var debug = new Debugger(global);
     var foo;
     debug.onDebuggerStatement = function(frame) {
         foo = frame.arguments[0];
--- a/js/src/jit-test/tests/debug/bug1404710.js
+++ b/js/src/jit-test/tests/debug/bug1404710.js
@@ -1,10 +1,9 @@
-if (!('stackTest' in this))
-    quit();
+// |jit-test| skip-if: !('stackTest' in this)
 stackTest(new Function(`
     var g = newGlobal();
     var dbg = new Debugger(g);
     dbg.onDebuggerStatement = function (frame) {
         frame.evalWithBindings("x", {x: 2}).return;
     };
     g.eval("function f(y) { debugger; }");
     g.f(3);
--- a/js/src/jit-test/tests/debug/bug1434391.js
+++ b/js/src/jit-test/tests/debug/bug1434391.js
@@ -1,9 +1,8 @@
-if (!('oomTest' in this))
-    quit();
+// |jit-test| skip-if: !('oomTest' in this)
 
 var g = newGlobal();
 var dbg = new Debugger();
 var gw = dbg.addDebuggee(g);
 oomTest(function () {
     assertEq(gw.executeInGlobal("(42).toString(0)").throw.errorMessageName, "JSMSG_BAD_RADIX");
 });
--- a/js/src/jit-test/tests/debug/inspect-wrapped-promise.js
+++ b/js/src/jit-test/tests/debug/inspect-wrapped-promise.js
@@ -1,11 +1,8 @@
-if (typeof Promise === "undefined")
-    quit(0);
-
 load(libdir + "asserts.js");
 
 let g = newGlobal();
 let dbg = new Debugger();
 let gw = dbg.addDebuggee(g);
 
 g.promise1 = new Promise(() => {});
 g.promise2 = Promise.resolve(42);
--- a/js/src/jit-test/tests/debug/onNewScript-off-main-thread-01.js
+++ b/js/src/jit-test/tests/debug/onNewScript-off-main-thread-01.js
@@ -1,12 +1,11 @@
-// We still get onNewScript notifications for code compiled off the main thread.
+// |jit-test| skip-if: helperThreadCount() === 0
 
-if (helperThreadCount() === 0)
-  quit(0);
+// We still get onNewScript notifications for code compiled off the main thread.
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 var log;
 dbg.onNewScript = function (s) {
   log += 's';
   assertEq(s.source.text, '"t" + "wine"');
--- a/js/src/jit-test/tests/debug/onNewScript-off-main-thread-02.js
+++ b/js/src/jit-test/tests/debug/onNewScript-off-main-thread-02.js
@@ -1,10 +1,9 @@
-if (helperThreadCount() === 0)
-  quit(0);
+// |jit-test| skip-if: helperThreadCount() === 0
 
 var global = newGlobal();
 var dbg = new Debugger(global);
 
 dbg.onNewScript = function (s) {
   if (s.url === "<string>")
     assertEq(s.getChildScripts().length, 1);
 };
--- a/js/src/jit-test/tests/debug/wasm-01.js
+++ b/js/src/jit-test/tests/debug/wasm-01.js
@@ -1,12 +1,11 @@
-// Tests that wasm module scripts are available via findScripts.
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
 
-if (!wasmDebuggingIsSupported())
-  quit();
+// Tests that wasm module scripts are available via findScripts.
 
 var g = newGlobal();
 g.eval(`o = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func) (export "" 0))')));`);
 
 function isWasm(script) { return script.format === "wasm"; }
 
 var dbg = new Debugger(g);
 var foundScripts1 = dbg.findScripts().filter(isWasm);
--- a/js/src/jit-test/tests/debug/wasm-02.js
+++ b/js/src/jit-test/tests/debug/wasm-02.js
@@ -1,12 +1,11 @@
-// Tests that wasm module scripts are available via onNewScript.
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
 
-if (!wasmDebuggingIsSupported())
-  quit();
+// Tests that wasm module scripts are available via onNewScript.
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 var gotScript;
 dbg.onNewScript = (script) => {
   gotScript = script;
 }
--- a/js/src/jit-test/tests/debug/wasm-03.js
+++ b/js/src/jit-test/tests/debug/wasm-03.js
@@ -1,15 +1,14 @@
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
+
 // Tests that wasm module scripts have synthesized sources.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-  quit();
-
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 var s;
 dbg.onNewScript = (script) => {
   s = script;
 }
 
--- a/js/src/jit-test/tests/debug/wasm-04.js
+++ b/js/src/jit-test/tests/debug/wasm-04.js
@@ -1,15 +1,14 @@
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
+
 // Tests that wasm module scripts throw for everything except text.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-  quit();
-
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 var s;
 dbg.onNewScript = (script) => {
   s = script;
 }
 
--- a/js/src/jit-test/tests/debug/wasm-06-onEnterFrame-null.js
+++ b/js/src/jit-test/tests/debug/wasm-06-onEnterFrame-null.js
@@ -1,16 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline; exitstatus: 3
+// |jit-test| test-also-no-wasm-baseline; exitstatus: 3; skip-if: !wasmDebuggingIsSupported()
 // Checking resumption values for 'null' at onEnterFrame.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-     quit(3);
-
 var g = newGlobal('');
 var dbg = new Debugger();
 dbg.addDebuggee(g);
 sandbox.eval(`
 var wasm = wasmTextToBinary('(module (func (nop)) (export "test" 0))');
 var m = new WebAssembly.Instance(new WebAssembly.Module(wasm));`);
 dbg.onEnterFrame = function (frame) {
     if (frame.type !== "wasmcall") return;
--- a/js/src/jit-test/tests/debug/wasm-06-onPop-null.js
+++ b/js/src/jit-test/tests/debug/wasm-06-onPop-null.js
@@ -1,16 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline; exitstatus: 3
+// |jit-test| test-also-no-wasm-baseline; exitstatus: 3; skip-if: !wasmDebuggingIsSupported()
 // Checking resumption values for 'null' at frame's onPop.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-    quit(3);
-
 var g = newGlobal('');
 var dbg = new Debugger();
 dbg.addDebuggee(g);
 sandbox.eval(`
 var wasm = wasmTextToBinary('(module (func (nop)) (export "test" 0))');
 var m = new WebAssembly.Instance(new WebAssembly.Module(wasm));`);
 dbg.onEnterFrame = function (frame) {
     if (frame.type !== "wasmcall") return;
--- a/js/src/jit-test/tests/debug/wasm-06.js
+++ b/js/src/jit-test/tests/debug/wasm-06.js
@@ -1,16 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline; error: TestComplete
+// |jit-test| test-also-no-wasm-baseline; error: TestComplete; skip-if: !wasmDebuggingIsSupported()
 // Tests that wasm module scripts raises onEnterFrame and onLeaveFrame events.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-    throw "TestComplete";
-
 function runWasmWithDebugger(wast, lib, init, done) {
     let g = newGlobal('');
     let dbg = new Debugger(g);
 
     g.eval(`
 var wasm = wasmTextToBinary('${wast}');
 var lib = ${lib || 'undefined'};
 var m = new WebAssembly.Instance(new WebAssembly.Module(wasm), lib);`);
--- a/js/src/jit-test/tests/debug/wasm-07.js
+++ b/js/src/jit-test/tests/debug/wasm-07.js
@@ -1,18 +1,16 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
+
 // Checking existence of all frame.offset references during onEnterFrame,
 // onLeaveFrame and onStep events in the source code, and that we can
 // potentially resolve offset back to the line/column.
 
 load(libdir + "wasm.js");
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 var offsets;
 wasmRunWithDebugger(
     '(module (func (nop) (nop)) (export "test" 0))',
     undefined,
     function ({dbg}) {
         offsets = [];
         dbg.onEnterFrame = function (frame) {
             if (frame.type != 'wasmcall') {
--- a/js/src/jit-test/tests/debug/wasm-08.js
+++ b/js/src/jit-test/tests/debug/wasm-08.js
@@ -1,16 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 // Checking if we destroying work registers by breakpoint/step handler.
 
 load(libdir + "wasm.js");
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 // Running the following code compiled from C snippet:
 //
 //     signed func0(signed n) {
 //         double a = 1; float b = 0; signed c = 1; long long d = 1;
 //         for (;n > 0; n--) {
 //             a *= c; b += c; c++; d <<= 1;
 //         }
 //         return (signed)a + (signed)b + c + (signed)d;
--- a/js/src/jit-test/tests/debug/wasm-09.js
+++ b/js/src/jit-test/tests/debug/wasm-09.js
@@ -1,16 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 // Tests debugEnabled state of wasm when allowUnobservedAsmJS == true.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 // Checking that there are no offsets are present in a wasm instance script for
 // which debug mode was not enabled.
 function getWasmScriptWithoutAllowUnobservedAsmJS(wast) {
     var sandbox = newGlobal('');
     var dbg = new Debugger();
     dbg.allowUnobservedAsmJS = true;
     dbg.addDebuggee(sandbox);
     sandbox.eval(`
--- a/js/src/jit-test/tests/debug/wasm-10.js
+++ b/js/src/jit-test/tests/debug/wasm-10.js
@@ -1,17 +1,14 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 // Tests that wasm module scripts has inspectable locals.
 
 load(libdir + "wasm.js");
 load(libdir + 'eqArrayHelper.js');
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 function monitorLocalValues(wast, lib, expected) {
     function setupFrame(frame) {
         var locals = {};
         framesLocals.push(locals);
         frame.environment.names().forEach(n => {
             locals[n] = [frame.environment.getVariable(n)];
         });
         frame.onStep = function () {
--- a/js/src/jit-test/tests/debug/wasm-11.js
+++ b/js/src/jit-test/tests/debug/wasm-11.js
@@ -1,15 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
+
 // Test single-stepping where the TLS register can be evicted by a non-trivial
 // function body.
 
-if (!wasmDebuggingIsSupported())
-  quit();
-
 var g = newGlobal();
 g.parent = this;
 g.eval(`
     var dbg = new Debugger(parent);
 `);
 
 var i = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary(`
     (module
--- a/js/src/jit-test/tests/debug/wasm-12.js
+++ b/js/src/jit-test/tests/debug/wasm-12.js
@@ -1,13 +1,11 @@
-// |jit-test| test-also-no-wasm-baseline
-// Tests that wasm module scripts have special URLs.
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 
-if (!wasmDebuggingIsSupported())
-  quit();
+// Tests that wasm module scripts have special URLs.
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 g.eval(`
 function initWasm(s) { return new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary(s))); }
 o1 = initWasm('(module (func) (export "" 0))');
 o2 = initWasm('(module (func) (func) (export "" 1))');
 `);
--- a/js/src/jit-test/tests/debug/wasm-binary-sources.js
+++ b/js/src/jit-test/tests/debug/wasm-binary-sources.js
@@ -1,16 +1,15 @@
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
+
 // Tests that wasm module scripts have access to binary sources.
 
 load(libdir + "asserts.js");
 load(libdir + "array-compare.js");
 
-if (!wasmDebuggingIsSupported())
-  quit();
-
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 var s;
 dbg.onNewScript = (script) => {
   s = script;
 }
 
--- a/js/src/jit-test/tests/debug/wasm-breakpoint.js
+++ b/js/src/jit-test/tests/debug/wasm-breakpoint.js
@@ -1,16 +1,13 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 // Tests that wasm module scripts handles basic breakpoint operations.
 
 load(libdir + "wasm.js");
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 function runTest(wast, initFunc, doneFunc) {
     let g = newGlobal('');
     let dbg = new Debugger(g);
 
     g.eval(`
 var { binary, offsets } = wasmTextToBinary('${wast}', /* offsets */ true);
 var m = new WebAssembly.Instance(new WebAssembly.Module(binary));`);
 
--- a/js/src/jit-test/tests/debug/wasm-get-return.js
+++ b/js/src/jit-test/tests/debug/wasm-get-return.js
@@ -1,17 +1,14 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 // Tests that wasm frame opPop event can access function resumption value.
 
 load(libdir + "wasm.js");
 load(libdir + 'eqArrayHelper.js');
 
-if (!wasmDebuggingIsSupported())
-  quit();
-
 function monitorFrameOnPopReturns(wast, expected) {
     var values = [];
     wasmRunWithDebugger(
         wast,
         undefined,
         function ({dbg}) {
             dbg.onEnterFrame = function (frame) {
                 if (frame.type != 'wasmcall') return;
--- a/js/src/jit-test/tests/debug/wasm-getAllColumnOffsets.js
+++ b/js/src/jit-test/tests/debug/wasm-getAllColumnOffsets.js
@@ -1,17 +1,15 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
+
 // Tests that wasm module scripts have column and line to bytecode offset
 // information when source text is generated.
 
 load(libdir + "asserts.js");
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 // Checking if experimental format generates internal source map to binary file
 // by querying debugger scripts getAllColumnOffsets.
 function getAllOffsets(wast) {
   var sandbox = newGlobal('');
   var dbg = new Debugger();
   dbg.addDebuggee(sandbox);
   dbg.allowWasmBinarySource = true;
   sandbox.eval(`
--- a/js/src/jit-test/tests/debug/wasm-onExceptionUnwind-gc.js
+++ b/js/src/jit-test/tests/debug/wasm-onExceptionUnwind-gc.js
@@ -1,11 +1,9 @@
-
-if (!wasmDebuggingIsSupported())
-    quit();
+// |jit-test| skip-if: !wasmDebuggingIsSupported()
 
 var sandbox = newGlobal();
 var dbg = new Debugger(sandbox);
 var counter = 0;
 dbg.onExceptionUnwind = (frame, value) => {
     if (frame.type !== "wasmcall")
         return;
     if (++counter != 2)
--- a/js/src/jit-test/tests/debug/wasm-responseurls.js
+++ b/js/src/jit-test/tests/debug/wasm-responseurls.js
@@ -1,15 +1,12 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 // Tests that wasm module can accept URL and sourceMapURL from response
 // when instantiateStreaming is used.
 
-if (!wasmDebuggingIsSupported())
-  quit();
-
 try {
     WebAssembly.compileStreaming();
 } catch (err) {
     assertEq(String(err).indexOf("not supported with --no-threads") !== -1, true);
     quit();
 }
 
 load(libdir + "asserts.js");
--- a/js/src/jit-test/tests/debug/wasm-sourceMappingURL.js
+++ b/js/src/jit-test/tests/debug/wasm-sourceMappingURL.js
@@ -1,13 +1,11 @@
-// |jit-test| test-also-no-wasm-baseline
-// Tests that wasm module sourceMappingURL section is parsed.
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
 
-if (!wasmDebuggingIsSupported())
-  quit();
+// Tests that wasm module sourceMappingURL section is parsed.
 
 load(libdir + "asserts.js");
 load(libdir + "wasm-binary.js");
 
 var g = newGlobal();
 var dbg = new Debugger(g);
 
 var gotScript;
--- a/js/src/jit-test/tests/debug/wasm-step.js
+++ b/js/src/jit-test/tests/debug/wasm-step.js
@@ -1,16 +1,14 @@
-// |jit-test| test-also-no-wasm-baseline
+// |jit-test| test-also-no-wasm-baseline; skip-if: !wasmDebuggingIsSupported()
+
 // Tests that wasm module scripts raises onEnterFrame and onLeaveFrame events.
 
 load(libdir + "wasm.js");
 
-if (!wasmDebuggingIsSupported())
-    quit();
-
 // Checking if we stop at every wasm instruction during step.
 var onEnterFrameCalled, onLeaveFrameCalled, onStepCalled;
 wasmRunWithDebugger(
     '(module (func (nop) (nop)) (export "test" 0))',
     undefined,
     function ({dbg}) {
         onEnterFrameCalled = 0;
         onLeaveFrameCalled = 0;