Closed
Bug 1000219
Opened 11 years ago
Closed 9 years ago
Assertion failure: !used(), at jit/shared/Assembler-shared.h:366
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
WORKSFORME
Tracking | Status | |
---|---|---|
firefox31 | --- | affected |
People
(Reporter: decoder, Assigned: dougc)
References
Details
(Keywords: assertion, testcase, Whiteboard: [jsbugmon:bisectfix])
The following testcase asserts on mozilla-central revision 1d0496e30feb (x86 ARM simulator build, run with --fuzzing-safe --ion-eager --ion-check-range-analysis):
loadFile("assertEq(Math.pow(-Infinity, -0.5), 0);");
loadFile("");
function loadFile(lfVarx) {
function newFunc(x) { new Function(x)(); }; newFunc(lfVarx, unescape("notused"));
}
Reporter | ||
Comment 1•11 years ago
|
||
Jan mentioned that this looks like another ARM assembler buffer issue, which could potentially be s-s, so filing as security bug for now until investigated.
status-firefox31:
--- → affected
Comment 2•11 years ago
|
||
I'm pretty sure this is caused by the ARM assembler bail/fail_bail mechanism. Then we |return false;| from bailoutFrom and we assert because the Label is unused.
Doug, is this bail/fail_bail stuff going away with the assembler buffer rewrite? It's a very simple testcase, I hope we're not aborting JIT compilation all the time due to this..
Flags: needinfo?(dtc-moz)
Assignee | ||
Comment 3•11 years ago
|
||
(In reply to Jan de Mooij [:jandem] from comment #2)
> I'm pretty sure this is caused by the ARM assembler bail/fail_bail
> mechanism. Then we |return false;| from bailoutFrom and we assert because
> the Label is unused.
>
> Doug, is this bail/fail_bail stuff going away with the assembler buffer
> rewrite?
Yes, it not longer has this bail out path.
> It's a very simple testcase, I hope we're not aborting JIT
> compilation all the time due to this..
Yes, this failure occurs after a constant pool packing failure. I have no statistics on how frequently this path is taken, but it has been a bigger problem testing asm.js code, and a bigger problem for the ARMv6 builds.
Flags: needinfo?(dtc-moz)
Updated•11 years ago
|
Assignee: nobody → dtc-moz
Comment 4•11 years ago
|
||
Is this actually a security issue? Or are we just bailing out?
Assignee | ||
Comment 5•11 years ago
|
||
(In reply to Andrew McCreight [:mccr8] from comment #4)
> Is this actually a security issue? Or are we just bailing out?
Bailing out is not a security issue, and it appears that the assertion can be ignored, so it does not appear to be a security issue. Although I have not actually explored what happens if the assertion is removed.
Updated•11 years ago
|
Group: core-security
Reporter | ||
Updated•10 years ago
|
Whiteboard: [jsbugmon:update,bisect]
Reporter | ||
Updated•10 years ago
|
Whiteboard: [jsbugmon:update,bisect] → [jsbugmon:update,bisect,ignore]
Reporter | ||
Comment 6•10 years ago
|
||
JSBugMon: The testcase found in this bug no longer reproduces (tried revision 951e3a671279).
Comment 7•9 years ago
|
||
No action in 15 months.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
Updated•9 years ago
|
Whiteboard: [jsbugmon:update,bisect,ignore] → [jsbugmon:bisectfix]
You need to log in
before you can comment on or make changes to this bug.
Description
•