Closed Bug 807035 Opened 12 years ago Closed 12 years ago

IonMonkey: "Assertion failure: pobj,"

Categories

(Core :: JavaScript Engine, defect)

x86_64
macOS
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla19

People

(Reporter: gkw, Assigned: nbp)

References

Details

(Keywords: assertion, regression, testcase, Whiteboard: [jsbugmon:update])

Attachments

(2 files)

Attached file stack
x = [0, 0, 0, 0, 0, 0, 0, 0]
y = ({}).__proto__
x.sort(function() {
    y.z
})

asserts js debug shell on m-c changeset a2a201dd7a85 with --no-jm at Assertion failure: pobj, and Ion seems to be on the stack so may be related to IonMonkey.

autoBisect is underway.
autoBisect shows this is probably related to the following changeset:

The first bad revision is:
changeset:   111708:4a2c17905a17
user:        Nicolas B. Pierron
date:        Mon Oct 29 14:48:45 2012 -0700
summary:     Bug 792631 - Add IC for missing properties. r=dvander
Blocks: 792631
Assignee: general → nicolas.b.pierron
Status: NEW → ASSIGNED
Do not try to add any guard if there is not prototype chain. This is similar to what I can find in the PolyIC code of JM.
Same patch, not private anymore (keep review from dvander).

Do not walk the proto-chain if there is none, the object shape should still be guarded before we check the proto-chain, so this is fine to replace this assertion by an early-exit of this function.  As mentioned before JM does the same thing in the PolyIC.
Attachment #677209 - Flags: review+
https://hg.mozilla.org/mozilla-central/rev/d551b523fbcd
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla19
A testcase for this bug was automatically identified at js/src/jit-test/tests/ion/bug807035.js.
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: