Closed
Bug 981314
Opened 11 years ago
Closed 11 years ago
OdinMonkey: Assertion failure: *thenBlock && *elseOrJoinBlock, at jit/AsmJS.cpp
Categories
(Core :: JavaScript Engine: JIT, defect)
Tracking
()
RESOLVED
FIXED
mozilla30
People
(Reporter: gkw, Assigned: bbouvier)
References
Details
(Keywords: assertion, regression, testcase, Whiteboard: [jsbugmon:update])
Attachments
(2 files, 1 obsolete file)
|
11.92 KB,
text/plain
|
Details | |
|
20.48 KB,
patch
|
luke
:
review+
|
Details | Diff | Splinter Review |
(function() {
"use asm";
function f() {
return 0
if (1) 0
}
})()
asserts js debug shell on m-c changeset 15df39c10a17 with --ion-parallel-compile=off --no-ion at Assertion failure: *thenBlock && *elseOrJoinBlock, at jit/AsmJS.cpp
My configure flags are:
CC="clang -Qunused-arguments" AR=ar CXX="clang++ -Qunused-arguments" sh ./configure --target=x86_64-apple-darwin12.5.0 --enable-optimize --enable-debug --enable-profiling --enable-gczeal --enable-debug-symbols --enable-methodjit --enable-type-inference --disable-tests --with-ccache --enable-threadsafe <other NSPR options>
=== Tinderbox Build Bisection Results by autoBisect ===
The "good" changeset has the timestamp "20140306070306" and the hash "0f87e8f8446c".
The "bad" changeset has the timestamp "20140306074607" and the hash "6048059d6ea1".
Likely regression window: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=0f87e8f8446c&tochange=6048059d6ea1
Only bug 919052 is in the regression window - Benjamin, is it a likely regressor?
Flags: needinfo?(benj)
Comment 1•11 years ago
|
||
Oops, I think the assertion is overly conservative since dead code will have null blocks. Seems like we can keep the assertions by adding FunctionCompiler::inDeadCode() const { return !curBlock_; } and turning the JS_ASSERTs to JS_ASSERT_IF(!f.inDeadCode(), ...);
| Assignee | ||
Comment 2•11 years ago
|
||
Thanks, and nice idea! Also %s/if (!curBlock_)/if (!deadCode()), that makes it clearer in all functions.
Assignee: nobody → benj
Status: NEW → ASSIGNED
Attachment #8388576 -
Flags: review?(luke)
Flags: needinfo?(benj)
| Assignee | ||
Comment 3•11 years ago
|
||
There was actually one more place where we can use inDeadCode().
Attachment #8388576 -
Attachment is obsolete: true
Attachment #8388576 -
Flags: review?(luke)
Attachment #8388577 -
Flags: review?(luke)
Comment 4•11 years ago
|
||
Comment on attachment 8388577 [details] [diff] [review]
Patch + test
Nice!
Attachment #8388577 -
Flags: review?(luke) → review+
| Assignee | ||
Comment 5•11 years ago
|
||
Comment 6•11 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla30
You need to log in
before you can comment on or make changes to this bug.
Description
•