Perma beta js/src/jit-test/tests/wasm/ion-error-i64.js | /builds/worker/workspace/build/src/js/src/jit-test/tests/wasm/ion-error-i64.js:72:21 Error: Assertion failed: got "cannot pass i64 to or from JS", when Gecko 78 merges to beta on 2020-06-01
Categories
(Core :: JavaScript: WebAssembly, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr68 | --- | unaffected |
firefox75 | --- | unaffected |
firefox76 | --- | unaffected |
firefox77 | --- | unaffected |
firefox78 | + | verified |
People
(Reporter: aryx, Assigned: lth)
References
(Regression)
Details
(Keywords: regression)
Attachments
(3 files)
central-as-beta simulation: https://treeherder.mozilla.org/#/jobs?repo=try&group_state=expanded&resultStatus=testfailed%2Cbusted%2Cexception%2Cretry%2Cusercancel%2Crunnable&revision=3dc8ff55d3eae0658dbcc606e4c8319721c1398e&selectedTaskRun=IaDmLHs2ReaESR1hZB_xaQ-0
Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=301033824&repo=try
[task 2020-05-06T13:39:19.908Z] TEST-PASS | js/src/jit-test/tests/wasm/ion-debugger.js | Success (code 0, args "--wasm-compiler=baseline") [0.3 s]
[task 2020-05-06T13:39:19.914Z] /builds/worker/workspace/build/src/js/src/jit-test/tests/wasm/ion-error-i64.js:72:21 Error: Assertion failed: got "cannot pass i64 to or from JS", expected "cannot pass i64 or v128 to or from JS"
[task 2020-05-06T13:39:19.914Z] Stack:
[task 2020-05-06T13:39:19.914Z] main@/builds/worker/workspace/build/src/js/src/jit-test/tests/wasm/ion-error-i64.js:72:21
[task 2020-05-06T13:39:19.914Z] @/builds/worker/workspace/build/src/js/src/jit-test/tests/wasm/ion-error-i64.js:97:1
[task 2020-05-06T13:39:19.914Z] Exit code: 3
[task 2020-05-06T13:39:19.914Z] FAIL - wasm/ion-error-i64.js
[task 2020-05-06T13:39:19.914Z] TEST-UNEXPECTED-FAIL | js/src/jit-test/tests/wasm/ion-error-i64.js | /builds/worker/workspace/build/src/js/src/jit-test/tests/wasm/ion-error-i64.js:72:21 Error: Assertion failed: got "cannot pass i64 to or from JS", expected "cannot pass i64 or v128 to or from JS" (code 3, args "") [0.2 s]
[
Assignee | ||
Comment 1•4 years ago
|
||
Probably a merge snafu. Will attend to this first thing in the morning.
Updated•4 years ago
|
Assignee | ||
Comment 2•4 years ago
|
||
Just needs an update to an error message, since the error message depends on the enabled feature set.
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 3•4 years ago
|
||
When SIMD is not enabled, v128 is not mentioned in the error message,
so make allowances for that.
Reporter | ||
Comment 4•4 years ago
|
||
There is a Linux32 arm issue which remains with the patch applied: https://treeherder.mozilla.org/logviewer.html#?job_id=301401881&repo=try
TEST-UNEXPECTED-FAIL | js/src/jit-test/tests/wasm/ion-error-i64.js | /builds/worker/workspace/build/src/js/src/jit-test/lib/wasm.js:321:11 Error: no plausible stacks found, observed: />/<,>/>/<,>/>/ (code 3, args "") [32.9 s]
Comment hidden (Intermittent Failures Robot) |
Updated•4 years ago
|
Assignee | ||
Comment 6•4 years ago
|
||
(In reply to Sebastian Hengst [:aryx] (needinfo on intermittent or backout) from comment #4)
There is a Linux32 arm issue which remains with the patch applied: https://treeherder.mozilla.org/logviewer.html#?job_id=301401881&repo=try
TEST-UNEXPECTED-FAIL | js/src/jit-test/tests/wasm/ion-error-i64.js | /builds/worker/workspace/build/src/js/src/jit-test/lib/wasm.js:321:11 Error: no plausible stacks found, observed: />/<,>/>/<,>/>/ (code 3, args "") [32.9 s]
OK, will investigate further.
Assignee | ||
Comment 7•4 years ago
|
||
(In reply to Lars T Hansen [:lth] from comment #6)
(In reply to Sebastian Hengst [:aryx] (needinfo on intermittent or backout) from comment #4)
There is a Linux32 arm issue which remains with the patch applied: https://treeherder.mozilla.org/logviewer.html#?job_id=301401881&repo=try
TEST-UNEXPECTED-FAIL | js/src/jit-test/tests/wasm/ion-error-i64.js | /builds/worker/workspace/build/src/js/src/jit-test/lib/wasm.js:321:11 Error: no plausible stacks found, observed: />/<,>/>/<,>/>/ (code 3, args "") [32.9 s]OK, will investigate further.
That failure is a timeout. I timeout on ion-error-ool.js locally but I think this may be a little arbitrary. It seems that these tests heavily exercise regular expressions to match items in the profiling stacks. Running on the arm simulator (and in debug-noopt mode on my system) the new regex engine appears to be really slow. Recently for the bigint<->int64 patches another case was added in WasmHelpers._normalizeStack() in jit-test/lib/wasm.js and this may have been just enough to push the test past the timeout limit. Will investigate a little further.
Assignee | ||
Comment 8•4 years ago
|
||
Stack normalization is uber-slow on emulator because it relies on
regexes that are compiled to native instructions which are then
emulated. That makes stack normalization very slow too, and as it's
very hot some tests will time out nearly always.
This patch inserts a simple cache for previously matched strings in
stack normalization to avoid the regex engine altogether. This speeds
up normalization and hence stack matching greatly (I observed a factor
of four speedup per test iteration on an arm-sim noopt debug build for
ion-error-ool.js).
I also attempted some other fixes (filtering on simple strings,
avoiding regex.replace, etc) but caching is by far the most effective
fix, and with caching in place the other fixes still don't really move
the needle.
Depends on D74220
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Updated•4 years ago
|
Pushed by lhansen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/d4756b84d2d5 Make an error message match more flexible. r=rhunt https://hg.mozilla.org/integration/autoland/rev/ec2d66612ed0 Add a fast path for stack normalization. r=rhunt
Comment 10•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/d4756b84d2d5
https://hg.mozilla.org/mozilla-central/rev/ec2d66612ed0
Reporter | ||
Comment 11•4 years ago
|
||
The Linux32 SM(arm) failure persists: https://treeherder.mozilla.org/#/jobs?repo=try&group_state=expanded&selectedTaskRun=WQNwIsuvQEyUdmAf5zzzcw-0&resultStatus=testfailed%2Cbusted%2Cexception%2Cretry%2Cusercancel%2Crunnable&revision=f892300ac1085894d6f676cbaffd39d4c87a52cf
Do you want a new bug?
Assignee | ||
Comment 12•4 years ago
|
||
(In reply to Sebastian Hengst [:aryx] (needinfo on intermittent or backout) from comment #11)
The Linux32 SM(arm) failure persists: https://treeherder.mozilla.org/#/jobs?repo=try&group_state=expanded&selectedTaskRun=WQNwIsuvQEyUdmAf5zzzcw-0&resultStatus=testfailed%2Cbusted%2Cexception%2Cretry%2Cusercancel%2Crunnable&revision=f892300ac1085894d6f676cbaffd39d4c87a52cf
Do you want a new bug?
That's annoying. Let me look into it first. If it keeps timing out on the server but not locally I'm going to consider disabling the test.
Assignee | ||
Comment 13•4 years ago
|
||
My bad. Starting with comment 4 I went after the timeout problem I observed locally but did not notice that I also need to deal with the other problem of "no plausible stacks". Going to reopen this one and attach another patch here. May take me a day to get to it.
Updated•4 years ago
|
Assignee | ||
Comment 14•4 years ago
|
||
The problem is that a profiler message has changed and will need to be generalized. This may need to be refined again once bigint rides the trains, any day now.
Assignee | ||
Comment 15•4 years ago
|
||
Also a drive-by fix for two regex problems, one where something that should
be a non-capturing submatch was represented as a character set and one
where a non-capturing submatch was represented as capturing.
Updated•4 years ago
|
Comment 16•4 years ago
|
||
Pushed by lhansen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2194251cb1f3 Update the stack matcher to handle v128. r=rhunt
Comment 17•4 years ago
|
||
bugherder |
Reporter | ||
Comment 18•4 years ago
|
||
Verified fixed with today's central-as-beta simulation: https://treeherder.mozilla.org/#/jobs?repo=try&group_state=expanded&resultStatus=testfailed%2Cbusted%2Cexception%2Cretry%2Cusercancel%2Crunnable&revision=bdde24953684f564f9d63151e8af85149c1cc5f7
Comment hidden (Intermittent Failures Robot) |
Updated•4 years ago
|
Description
•