diff --git a/JetStreamDriver.js b/JetStreamDriver.js index 6c0880d..d73a873 100644 --- a/JetStreamDriver.js +++ b/JetStreamDriver.js @@ -631,7 +631,6 @@ class Benchmark { this.tags = new Set(plan.tags); this.iterations = getIterationCount(plan); this.isAsync = !!plan.isAsync; - this.disabledByDefault = !!plan.disabledByDefault; this.scripts = null; this._resourcesPromise = null; this._state = BenchmarkState.READY; @@ -644,6 +643,14 @@ class Benchmark { } get isSuccess() { return this._state = BenchmarkState.DONE; } + hasAnyTag(...tags) { + for (const tag of tags) { + if (this.tags.has(tag)) + return true; + } + return false; + } + get runnerCode() { return ` let __benchmark = new Benchmark(${this.iterations}); @@ -1558,7 +1565,7 @@ let BENCHMARKS = [ , "./ARES-6/Air/payload-typescript-scanIdentifier.js" , "./ARES-6/Air/benchmark.js" ], - tags: ["ARES"], + tags: ["default", "ARES"], }), new DefaultBenchmark({ name: "Basic", @@ -1574,7 +1581,7 @@ let BENCHMARKS = [ , "./ARES-6/Basic/util.js" , "./ARES-6/Basic/benchmark.js" ], - tags: ["ARES"], + tags: ["default", "ARES"], }), new DefaultBenchmark({ name: "ML", @@ -1583,7 +1590,7 @@ let BENCHMARKS = [ , "./ARES-6/ml/benchmark.js" ], iterations: 60, - tags: ["ARES"], + tags: ["default", "ARES"], }), new DefaultBenchmark({ name: "Babylon", @@ -1597,7 +1604,7 @@ let BENCHMARKS = [ inspectorBlob: "./ARES-6/Babylon/inspector-blob.js", babylonBlob: "./ARES-6/Babylon/babylon-blob.js" }, - tags: ["ARES"], + tags: ["default", "ARES"], }), // CDJS new DefaultBenchmark({ @@ -1618,7 +1625,7 @@ let BENCHMARKS = [ ], iterations: 60, worstCaseCount: 3, - tags: ["CDJS"], + tags: ["default", "CDJS"], }), // CodeLoad new DefaultBenchmark({ @@ -1629,7 +1636,7 @@ let BENCHMARKS = [ preload: { inspectorPayloadBlob: "./code-load/inspector-payload-minified.js" }, - tags: ["CodeLoad"], + tags: ["default", "CodeLoad"], }), new DefaultBenchmark({ name: "multi-inspector-code-load", @@ -1639,7 +1646,7 @@ let BENCHMARKS = [ preload: { inspectorPayloadBlob: "./code-load/inspector-payload-minified.js" }, - tags: ["CodeLoad"], + tags: ["default", "CodeLoad"], }), // Octane new DefaultBenchmark({ @@ -1648,7 +1655,7 @@ let BENCHMARKS = [ "./Octane/box2d.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "octane-code-load", @@ -1656,7 +1663,7 @@ let BENCHMARKS = [ "./Octane/code-first-load.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "crypto", @@ -1664,7 +1671,7 @@ let BENCHMARKS = [ "./Octane/crypto.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "delta-blue", @@ -1672,7 +1679,7 @@ let BENCHMARKS = [ "./Octane/deltablue.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "earley-boyer", @@ -1680,7 +1687,7 @@ let BENCHMARKS = [ "./Octane/earley-boyer.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "gbemu", @@ -1689,7 +1696,7 @@ let BENCHMARKS = [ , "./Octane/gbemu-part2.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "mandreel", @@ -1698,7 +1705,7 @@ let BENCHMARKS = [ ], iterations: 80, deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "navier-stokes", @@ -1706,7 +1713,7 @@ let BENCHMARKS = [ "./Octane/navier-stokes.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "pdfjs", @@ -1714,14 +1721,14 @@ let BENCHMARKS = [ "./Octane/pdfjs.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "raytrace", files: [ "./Octane/raytrace.js" ], - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "regexp", @@ -1729,7 +1736,7 @@ let BENCHMARKS = [ "./Octane/regexp.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "richards", @@ -1737,7 +1744,7 @@ let BENCHMARKS = [ "./Octane/richards.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "splay", @@ -1745,7 +1752,7 @@ let BENCHMARKS = [ "./Octane/splay.js" ], deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), new DefaultBenchmark({ name: "typescript", @@ -1757,7 +1764,7 @@ let BENCHMARKS = [ iterations: 15, worstCaseCount: 2, deterministicRandom: true, - tags: ["Octane"], + tags: ["default", "Octane"], }), // RexBench new DefaultBenchmark({ @@ -1769,7 +1776,7 @@ let BENCHMARKS = [ , "./RexBench/FlightPlanner/expectations.js" , "./RexBench/FlightPlanner/benchmark.js" ], - tags: ["RexBench"], + tags: ["default", "RexBench"], }), new DefaultBenchmark({ name: "OfflineAssembler", @@ -1787,7 +1794,7 @@ let BENCHMARKS = [ , "./RexBench/OfflineAssembler/benchmark.js" ], iterations: 80, - tags: ["RexBench"], + tags: ["default", "RexBench"], }), new DefaultBenchmark({ name: "UniPoker", @@ -1797,7 +1804,7 @@ let BENCHMARKS = [ , "./RexBench/UniPoker/benchmark.js" ], deterministicRandom: true, - tags: ["RexBench"], + tags: ["default", "RexBench"], }), // Simple new DefaultBenchmark({ @@ -1805,21 +1812,21 @@ let BENCHMARKS = [ files: [ "./simple/hash-map.js" ], - tags: ["Simple"], + tags: ["default", "Simple"], }), new AsyncBenchmark({ name: "doxbee-promise", files: [ "./simple/doxbee-promise.js", ], - tags: ["Simple"], + tags: ["default", "Simple"], }), new AsyncBenchmark({ name: "doxbee-async", files: [ "./simple/doxbee-async.js", ], - tags: ["Simple"], + tags: ["default", "Simple"], }), // SeaMonster new DefaultBenchmark({ @@ -1827,14 +1834,14 @@ let BENCHMARKS = [ files: [ "./SeaMonster/ai-astar.js" ], - tags: ["SeaMonster"], + tags: ["default", "SeaMonster"], }), new DefaultBenchmark({ name: "gaussian-blur", files: [ "./SeaMonster/gaussian-blur.js" ], - tags: ["SeaMonster"], + tags: ["default", "SeaMonster"], }), new DefaultBenchmark({ name: "stanford-crypto-aes", @@ -1842,7 +1849,7 @@ let BENCHMARKS = [ "./SeaMonster/sjlc.js" , "./SeaMonster/stanford-crypto-aes.js" ], - tags: ["SeaMonster"], + tags: ["default", "SeaMonster"], }), new DefaultBenchmark({ name: "stanford-crypto-pbkdf2", @@ -1850,7 +1857,7 @@ let BENCHMARKS = [ "./SeaMonster/sjlc.js" , "./SeaMonster/stanford-crypto-pbkdf2.js" ], - tags: ["SeaMonster"], + tags: ["default", "SeaMonster"], }), new DefaultBenchmark({ name: "stanford-crypto-sha256", @@ -1858,7 +1865,7 @@ let BENCHMARKS = [ "./SeaMonster/sjlc.js" , "./SeaMonster/stanford-crypto-sha256.js" ], - tags: ["SeaMonster"], + tags: ["default", "SeaMonster"], }), new DefaultBenchmark({ name: "json-stringify-inspector", @@ -1868,7 +1875,7 @@ let BENCHMARKS = [ ], iterations: 20, worstCaseCount: 2, - tags: ["SeaMonster"], + tags: ["default", "SeaMonster"], }), new DefaultBenchmark({ name: "json-parse-inspector", @@ -1878,7 +1885,7 @@ let BENCHMARKS = [ ], iterations: 20, worstCaseCount: 2, - tags: ["SeaMonster"], + tags: ["default", "SeaMonster"], }), // BigInt new AsyncBenchmark({ @@ -1892,7 +1899,6 @@ let BENCHMARKS = [ worstCaseCount: 1, deterministicRandom: true, tags: ["BigIntNoble"], - disabledByDefault: true, }), new AsyncBenchmark({ name: "bigint-noble-secp256k1", @@ -1903,7 +1909,6 @@ let BENCHMARKS = [ ], deterministicRandom: true, tags: ["BigIntNoble"], - disabledByDefault: true, }), new AsyncBenchmark({ name: "bigint-noble-ed25519", @@ -1914,7 +1919,7 @@ let BENCHMARKS = [ ], iterations: 30, deterministicRandom: true, - tags: ["BigIntNoble"], + tags: ["default", "BigIntNoble"], }), new DefaultBenchmark({ name: "bigint-paillier", @@ -1927,7 +1932,6 @@ let BENCHMARKS = [ worstCaseCount: 2, deterministicRandom: true, tags: ["BigIntMisc"], - disabledByDefault: true, }), new DefaultBenchmark({ name: "bigint-bigdenary", @@ -1938,7 +1942,6 @@ let BENCHMARKS = [ iterations: 160, worstCaseCount: 16, tags: ["BigIntMisc"], - disabledByDefault: true, }), // Proxy new AsyncBenchmark({ @@ -1950,7 +1953,7 @@ let BENCHMARKS = [ ], iterations: defaultIterationCount * 3, worstCaseCount: defaultWorstCaseCount * 3, - tags: ["Proxy"], + tags: ["default", "Proxy"], }), new AsyncBenchmark({ name: "proxy-vue", @@ -1959,7 +1962,7 @@ let BENCHMARKS = [ "./proxy/vue-bundle.js", "./proxy/vue-benchmark.js", ], - tags: ["Proxy"] + tags: ["default", "Proxy"] }), // Class fields new DefaultBenchmark({ @@ -1967,14 +1970,14 @@ let BENCHMARKS = [ files: [ "./class-fields/raytrace-public-class-fields.js", ], - tags: ["ClassFields"] + tags: ["default", "ClassFields"] }), new DefaultBenchmark({ name: "raytrace-private-class-fields", files: [ "./class-fields/raytrace-private-class-fields.js", ], - tags: ["ClassFields"] + tags: ["default", "ClassFields"] }), // Generators new AsyncBenchmark({ @@ -1985,7 +1988,7 @@ let BENCHMARKS = [ iterations: 80, worstCaseCount: 6, deterministicRandom: true, - tags: ["Generators"] + tags: ["default", "Generators"] }), new DefaultBenchmark({ name: "sync-fs", @@ -1995,21 +1998,21 @@ let BENCHMARKS = [ iterations: 80, worstCaseCount: 6, deterministicRandom: true, - tags: ["Generators"] + tags: ["default", "Generators"] }), new DefaultBenchmark({ name: "lazy-collections", files: [ "./generators/lazy-collections.js", ], - tags: ["Generators"] + tags: ["default", "Generators"] }), new DefaultBenchmark({ name: "js-tokens", files: [ "./generators/js-tokens.js", ], - tags: ["Generators"] + tags: ["default", "Generators"] }), // Wasm new WasmEMCCBenchmark({ @@ -2022,7 +2025,7 @@ let BENCHMARKS = [ wasmBinary: "./wasm/HashSet/build/HashSet.wasm" }, iterations: 50, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmEMCCBenchmark({ name: "tsf-wasm", @@ -2034,7 +2037,7 @@ let BENCHMARKS = [ wasmBinary: "./wasm/TSF/build/tsf.wasm" }, iterations: 50, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmEMCCBenchmark({ name: "quicksort-wasm", @@ -2046,7 +2049,7 @@ let BENCHMARKS = [ wasmBinary: "./wasm/quicksort/build/quicksort.wasm" }, iterations: 50, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmEMCCBenchmark({ name: "gcc-loops-wasm", @@ -2058,7 +2061,7 @@ let BENCHMARKS = [ wasmBinary: "./wasm/gcc-loops/build/gcc-loops.wasm" }, iterations: 50, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmEMCCBenchmark({ name: "richards-wasm", @@ -2070,7 +2073,7 @@ let BENCHMARKS = [ wasmBinary: "./wasm/richards/build/richards.wasm" }, iterations: 50, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmEMCCBenchmark({ name: "sqlite3-wasm", @@ -2083,7 +2086,7 @@ let BENCHMARKS = [ }, iterations: 30, worstCaseCount: 2, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmEMCCBenchmark({ name: "Dart-flute-wasm", @@ -2095,7 +2098,7 @@ let BENCHMARKS = [ }, iterations: 15, worstCaseCount: 2, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmLegacyBenchmark({ name: "tfjs-wasm", @@ -2115,7 +2118,7 @@ let BENCHMARKS = [ }, async: true, deterministicRandom: true, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmLegacyBenchmark({ name: "tfjs-wasm-simd", @@ -2135,7 +2138,7 @@ let BENCHMARKS = [ }, async: true, deterministicRandom: true, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), new WasmEMCCBenchmark({ name: "argon2-wasm", @@ -2149,7 +2152,7 @@ let BENCHMARKS = [ iterations: 30, worstCaseCount: 3, deterministicRandom: true, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), // WorkerTests new AsyncBenchmark({ @@ -2186,7 +2189,7 @@ let BENCHMARKS = [ , stringUnpackCode: "./worker/bomb-subtests/string-unpack-code.js" , regexpDNA: "./worker/bomb-subtests/regexp-dna.js" }, - tags: ["WorkerTests"], + tags: ["default", "WorkerTests"], }), new AsyncBenchmark({ name: "segmentation", @@ -2198,13 +2201,13 @@ let BENCHMARKS = [ }, iterations: 36, worstCaseCount: 3, - tags: ["WorkerTests"], + tags: ["default", "WorkerTests"], }), // WSL new WSLBenchmark({ name: "WSL", files: ["./WSL/Node.js" ,"./WSL/Type.js" ,"./WSL/ReferenceType.js" ,"./WSL/Value.js" ,"./WSL/Expression.js" ,"./WSL/Rewriter.js" ,"./WSL/Visitor.js" ,"./WSL/CreateLiteral.js" ,"./WSL/CreateLiteralType.js" ,"./WSL/PropertyAccessExpression.js" ,"./WSL/AddressSpace.js" ,"./WSL/AnonymousVariable.js" ,"./WSL/ArrayRefType.js" ,"./WSL/ArrayType.js" ,"./WSL/Assignment.js" ,"./WSL/AutoWrapper.js" ,"./WSL/Block.js" ,"./WSL/BoolLiteral.js" ,"./WSL/Break.js" ,"./WSL/CallExpression.js" ,"./WSL/CallFunction.js" ,"./WSL/Check.js" ,"./WSL/CheckLiteralTypes.js" ,"./WSL/CheckLoops.js" ,"./WSL/CheckRecursiveTypes.js" ,"./WSL/CheckRecursion.js" ,"./WSL/CheckReturns.js" ,"./WSL/CheckUnreachableCode.js" ,"./WSL/CheckWrapped.js" ,"./WSL/Checker.js" ,"./WSL/CloneProgram.js" ,"./WSL/CommaExpression.js" ,"./WSL/ConstexprFolder.js" ,"./WSL/ConstexprTypeParameter.js" ,"./WSL/Continue.js" ,"./WSL/ConvertPtrToArrayRefExpression.js" ,"./WSL/DereferenceExpression.js" ,"./WSL/DoWhileLoop.js" ,"./WSL/DotExpression.js" ,"./WSL/DoubleLiteral.js" ,"./WSL/DoubleLiteralType.js" ,"./WSL/EArrayRef.js" ,"./WSL/EBuffer.js" ,"./WSL/EBufferBuilder.js" ,"./WSL/EPtr.js" ,"./WSL/EnumLiteral.js" ,"./WSL/EnumMember.js" ,"./WSL/EnumType.js" ,"./WSL/EvaluationCommon.js" ,"./WSL/Evaluator.js" ,"./WSL/ExpressionFinder.js" ,"./WSL/ExternalOrigin.js" ,"./WSL/Field.js" ,"./WSL/FindHighZombies.js" ,"./WSL/FlattenProtocolExtends.js" ,"./WSL/FlattenedStructOffsetGatherer.js" ,"./WSL/FloatLiteral.js" ,"./WSL/FloatLiteralType.js" ,"./WSL/FoldConstexprs.js" ,"./WSL/ForLoop.js" ,"./WSL/Func.js" ,"./WSL/FuncDef.js" ,"./WSL/FuncInstantiator.js" ,"./WSL/FuncParameter.js" ,"./WSL/FunctionLikeBlock.js" ,"./WSL/HighZombieFinder.js" ,"./WSL/IdentityExpression.js" ,"./WSL/IfStatement.js" ,"./WSL/IndexExpression.js" ,"./WSL/InferTypesForCall.js" ,"./WSL/Inline.js" ,"./WSL/Inliner.js" ,"./WSL/InstantiateImmediates.js" ,"./WSL/IntLiteral.js" ,"./WSL/IntLiteralType.js" ,"./WSL/Intrinsics.js" ,"./WSL/LateChecker.js" ,"./WSL/Lexer.js" ,"./WSL/LexerToken.js" ,"./WSL/LiteralTypeChecker.js" ,"./WSL/LogicalExpression.js" ,"./WSL/LogicalNot.js" ,"./WSL/LoopChecker.js" ,"./WSL/MakeArrayRefExpression.js" ,"./WSL/MakePtrExpression.js" ,"./WSL/NameContext.js" ,"./WSL/NameFinder.js" ,"./WSL/NameResolver.js" ,"./WSL/NativeFunc.js" ,"./WSL/NativeFuncInstance.js" ,"./WSL/NativeType.js" ,"./WSL/NativeTypeInstance.js" ,"./WSL/NormalUsePropertyResolver.js" ,"./WSL/NullLiteral.js" ,"./WSL/NullType.js" ,"./WSL/OriginKind.js" ,"./WSL/OverloadResolutionFailure.js" ,"./WSL/Parse.js" ,"./WSL/Prepare.js" ,"./WSL/Program.js" ,"./WSL/ProgramWithUnnecessaryThingsRemoved.js" ,"./WSL/PropertyResolver.js" ,"./WSL/Protocol.js" ,"./WSL/ProtocolDecl.js" ,"./WSL/ProtocolFuncDecl.js" ,"./WSL/ProtocolRef.js" ,"./WSL/PtrType.js" ,"./WSL/ReadModifyWriteExpression.js" ,"./WSL/RecursionChecker.js" ,"./WSL/RecursiveTypeChecker.js" ,"./WSL/ResolveNames.js" ,"./WSL/ResolveOverloadImpl.js" ,"./WSL/ResolveProperties.js" ,"./WSL/ResolveTypeDefs.js" ,"./WSL/Return.js" ,"./WSL/ReturnChecker.js" ,"./WSL/ReturnException.js" ,"./WSL/StandardLibrary.js" ,"./WSL/StatementCloner.js" ,"./WSL/StructLayoutBuilder.js" ,"./WSL/StructType.js" ,"./WSL/Substitution.js" ,"./WSL/SwitchCase.js" ,"./WSL/SwitchStatement.js" ,"./WSL/SynthesizeEnumFunctions.js" ,"./WSL/SynthesizeStructAccessors.js" ,"./WSL/TrapStatement.js" ,"./WSL/TypeDef.js" ,"./WSL/TypeDefResolver.js" ,"./WSL/TypeOrVariableRef.js" ,"./WSL/TypeParameterRewriter.js" ,"./WSL/TypeRef.js" ,"./WSL/TypeVariable.js" ,"./WSL/TypeVariableTracker.js" ,"./WSL/TypedValue.js" ,"./WSL/UintLiteral.js" ,"./WSL/UintLiteralType.js" ,"./WSL/UnificationContext.js" ,"./WSL/UnreachableCodeChecker.js" ,"./WSL/VariableDecl.js" ,"./WSL/VariableRef.js" ,"./WSL/VisitingSet.js" ,"./WSL/WSyntaxError.js" ,"./WSL/WTrapError.js" ,"./WSL/WTypeError.js" ,"./WSL/WhileLoop.js" ,"./WSL/WrapChecker.js", "./WSL/Test.js"], - tags: ["WSL"], + tags: ["default", "WSL"], }), // 8bitbench new WasmEMCCBenchmark({ @@ -2220,7 +2223,7 @@ let BENCHMARKS = [ }, iterations: 15, worstCaseCount: 2, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), // zlib-wasm new WasmEMCCBenchmark({ @@ -2233,7 +2236,7 @@ let BENCHMARKS = [ wasmBinary: "./wasm/zlib/build/zlib.wasm", }, iterations: 40, - tags: ["Wasm"], + tags: ["default", "Wasm"], }), ]; @@ -2275,7 +2278,7 @@ for (const test of SUNSPIDER_TESTS) { files: [ `./SunSpider/${test}.js` ], - tags: ["SunSpider"], + tags: ["default", "SunSpider"], })); } @@ -2300,7 +2303,7 @@ for (const name of WTB_TESTS) { ], iterations: 5, worstCaseCount: 1, - tags: ["WTB"], + tags: ["default", "WTB"], })); } @@ -2315,6 +2318,8 @@ for (const benchmark of BENCHMARKS) { throw new Error(`Duplicate benchmark with name "${name}}"`); else benchmarksByName.set(name, benchmark); + + benchmark.tags.add("all"); for (const tag of benchmark.tags) { if (benchmarksByTag.has(tag)) @@ -2326,16 +2331,6 @@ for (const benchmark of BENCHMARKS) { this.JetStream = new Driver(); -function enableBenchmarks(benchmarks, forceEnable = false) -{ - for (let benchmark of benchmarks) { - if (!forceEnable && benchmark.disabledByDefault) - return; - - JetStream.addBenchmark(benchmark); - } -} - function enableBenchmarksByName(name) { const benchmark = benchmarksByName.get(name); @@ -2347,7 +2342,7 @@ function enableBenchmarksByName(name) JetStream.addBenchmark(benchmark); } -function enableBenchmarksByTag(tag, forceEnable = false) +function enableBenchmarksByTag(tag, excludeTags) { const benchmarks = benchmarksByTag.get(tag); @@ -2357,13 +2352,13 @@ function enableBenchmarksByTag(tag, forceEnable = false) } for (const benchmark of benchmarks) { - if (!forceEnable && benchmark.disabledByDefault) - continue; - + if (excludeTags && benchmark.hasAnyTag(...excludeTags)) + continue JetStream.addBenchmark(benchmark); } } + function processTestList(testList) { let benchmarkNames = []; @@ -2373,108 +2368,22 @@ function processTestList(testList) else benchmarkNames = testList.split(/[\s,]/); - const forceEnable = true; for (const name of benchmarkNames) { if (benchmarksByTag.has(name)) - enableBenchmarksByTag(name, forceEnable); + enableBenchmarksByTag(name); else enableBenchmarksByName(name); } } -let runOctane = true; -let runARES = true; -let runWSL = true; -let runRexBench = true; -let runWTB = true; -let runSunSpider = true; -let runBigIntNoble = true; -let runBigIntMisc = true; -let runProxy = true; -let runClassFields = true; -let runGenerators = true; -let runSimple = true; -let runCDJS = true; -let runWorkerTests = !!isInBrowser; -let runSeaMonster = true; -let runCodeLoad = true; -let runWasm = true; -if (typeof WebAssembly === "undefined") - runWasm = false; - -if (false) { - runOctane = false; - runARES = false; - runWSL = false; - runRexBench = false; - runWTB = false; - runSunSpider = false; - runBigIntNoble = false; - runBigIntMisc = false; - runProxy = false; - runClassFields = false; - runGenerators = false; - runSimple = false; - runCDJS = false; - runWorkerTests = false; - runSeaMonster = false; - runCodeLoad = false; - runWasm = false; -} +const defaultDisabledTags = []; +if (!isInBrowser) + defaultDisabledTags.push("WorkerTests"); if (typeof testList !== "undefined") { processTestList(testList); } else if (customTestList.length) { processTestList(customTestList); } else { - if (runARES) - enableBenchmarksByTag("ARES"); - - if (runCDJS) - enableBenchmarksByTag("CDJS"); - - if (runCodeLoad) - enableBenchmarksByTag("CodeLoad"); - - if (runOctane) - enableBenchmarksByTag("Octane"); - - if (runRexBench) - enableBenchmarksByTag("RexBench"); - - if (runSeaMonster) - enableBenchmarksByTag("SeaMonster"); - - if (runSimple) - enableBenchmarksByTag("Simple"); - - if (runSunSpider) - enableBenchmarksByTag("SunSpider"); - - if (runBigIntNoble) - enableBenchmarksByTag("BigIntNoble"); - - if (runBigIntMisc) - enableBenchmarksByTag("BigIntMisc"); - - if (runProxy) - enableBenchmarksByTag("Proxy"); - - if (runClassFields) - enableBenchmarksByTag("ClassFields"); - - if (runGenerators) - enableBenchmarksByTag("Generators"); - - if (runWasm) - enableBenchmarksByTag("Wasm"); - - if (runWorkerTests) - enableBenchmarksByTag("WorkerTests"); - - if (runWSL) - enableBenchmarksByTag("WSL"); - - if (runWTB) - enableBenchmarksByTag("WTB"); + enableBenchmarksByTag("default", defaultDisabledTags) }