IonMonkey: Assertion failure: thisArg->useCount() == 0, at ion/IonBuilder.cpp:2202

RESOLVED FIXED

Status

()

Core
JavaScript Engine
--
major
RESOLVED FIXED
6 years ago
5 years ago

People

(Reporter: decoder, Assigned: nbp)

Tracking

(Blocks: 2 bugs, {assertion, testcase})

Other Branch
x86_64
Linux
assertion, testcase
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

6 years ago
The following testcase asserts on ionmonkey revision c34398f961e7 (run with --ion -n), tested on 64 bit:


function g() {}
for(var i = 0; "0 == 0"; i++) {
    g(0 || 1);
}
(Assignee)

Comment 1

6 years ago
The fix should reuse the logic of IonBuilder::discardCallArgs (MCallOptimize).
I recently worked on it, so I take.
Assignee: general → nicolas.b.pierron
Status: NEW → ASSIGNED
(Assignee)

Comment 2

6 years ago
Created attachment 597625 [details] [diff] [review]
Accept Arguments to be saved by resume points.

Share discardCallArgs function between Inlining and Native function substitution.
Attachment #597625 - Flags: review?(christopher.leary)
Attachment #597625 - Flags: review?(christopher.leary) → review+
(Assignee)

Comment 3

6 years ago
https://hg.mozilla.org/projects/ionmonkey/rev/8f0f05d821e5
Status: ASSIGNED → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
(Reporter)

Comment 4

5 years ago
A testcase for this bug was automatically identified at js/src/jit-test/tests/ion/bug724976.js.
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.