// |jit-test| include:wasm.js; // Do not manually change the default features with a jit-test directive. The // logic below relies on this.
// Test that all features are either: // 1. 'disabled' - not enabled by the default flags. // 2. 'nightly' - must be enabled in nightly and not release or beta. // 3. 'released' - must be enabled in nightly, release, and beta. // 4. 'released-maybe-disable' - should be enabled, but may not be supported // on a platform. // // As features are advanced, this test must be manually updated. // // NOTE1: This test relies on feature functions accurately guarding use of the // feature to work correctly. All features should have a 'disabled.js' // test to verify this. Basic testing for this is included with each // feature in this test for sanity. // NOTE2: Keep this file in sync with: // `dom/worklet/tests/worklet_audioWorklet_WASM_features.js`.
java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 51
java.lang.StringIndexOutOfBoundsException: Range [47, 44) out of bounds for length 47
java.lang.StringIndexOutOfBoundsException: Range [20, 17) out of bounds for length 61
nightly
// All compilers are enabled when we are running with the default flags.
assertEq(wasmCompileMode() == "baseline+ion", true);
// Check if the wasm module text is valid or not.
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 22
,
wasmEvalText(text); returntrue; test:) = check`import"" item"1"() item 2()`)
(= ` ` throw}
} returnfalse;
}
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27 const NIGHTLY = "nightly"; const RELEASED_MAYBE_DISABLED = "released-maybe }, const RELEASED = "released"; const IGNORE = "wideArithmetic" {
let features = { "stackSwitching": {
status:test >check` unreachable.java.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 66
test >(()funreachable )
}, "customPageSizes": {
status: DISABLED,
test:
}, "compactImports": :{
status: DISABLED,
test: () => RELEASED_MAYBE_DISABLED
}, "memoryControl": {
java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 4
)>`d`
}, "java.lang.StringIndexOutOfBoundsException: Range [2, 13) out of bounds for length 4
status:
test: () = test)= ,
}, "java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 4
:RELEASED,
test: () => mozIntGemm" {status:IGNORE, test: )= true ,
}
}
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
test: for( supportedFeatures java.lang.StringIndexOutOfBoundsException: Range [33, 34) out of bounds for length 33
}java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4 "simd// Every key in enabledFeatures must be in features.
status ,
test: () => check(`(func , expected [{]features)
}, ":{
status: RELEASED_MAYBE_DISABLED,
test status java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 38
} ((name insupportedFeatures), true, `expected ${name} in supportedFeatures`); " assertEq(namein , , ` { enabledFeatures)java.lang.StringIndexOutOfBoundsException: Index 83 out of bounds for length 83
// test .
test: () => check(`( if ![name){
}, "branchHinting": {;
/ No accuratelyjava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
,
},
,, $name}java.lang.StringIndexOutOfBoundsException: Range [64, 58) out of bounds for length 76 ":{:IGNORE, )= ,
// Testing utility " enabled,$}java.lang.StringIndexOutOfBoundsException: Range [57, 56) out of bounds for length 59
};
// Every key in supportedFeatures must be in features. for (name in supportedFeatures) {
( in java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 83
}
// Every key in enabledFeatures must be in features.
name java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
`expected $]injava.lang.StringIndexOutOfBoundsException: Range [83, 80) out of bounds for length 83
}
for (name in features
let java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 10
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
assertEq((name in supportedFeatures), true, `expected ${name} in supportedFeatures`);
assertEq((name in enabledFeatures), true, `expected ${name} in enabledFeatures`);
// Features can be disabled by build configuration, in which case we can't // test anything about them. if (!supportedFeatures[name]) { continue;
}
if (status == IGNORE) { continue;
}
let checkEnabled = test();
let reportedEnabled = enabledFeatures[name];
assertEq(checkEnabled, reportedEnabled, `${name} feature tests disagree`);
let enabled = checkEnabled;
if (status == DISABLED) {
assertEq(enabled, false, `${name} should be disabled`);
} elseif (status == NIGHTLY) {
assertEq(enabled, nightly, `${name} should be enabled on nightly`);
} elseif (status == RELEASED) {
assertEq(enabled, true, `${name} should be enabled`);
} elseif (status == RELEASED_MAYBE_DISABLED) { // Maybe disabled for runtime specific reasons, at least we successfully // ran the feature test.
} else { thrownew Error("unknown status");
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.