TI: Assertion failure: v.isBoolean(), at js/src/jsbool.cpp:202

RESOLVED FIXED

Status

()

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

People

(Reporter: decoder, Assigned: jandem)

Tracking

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

Trunk
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 TI revision 3062ff7fef83 (run with -m -n -a),
tested on 64 bit:

var VERSION = "ECMA_2";
DoWhile(
        new DoWhileObject( false, false, false, VERSION )
);
function DoWhileObject( out1, out2, out3, in1 ) {
  this.breakIn=in1
}
function DoWhile( object ) {
    do if ( object.breakIn ) {} while ( false );
}
(Assignee)

Comment 1

6 years ago
Created attachment 530269 [details] [diff] [review]
Patch

We could store a JSVAL_TYPE_UNKNOWN tag for loop-invariant properties. The other callers of learnType either pass a constant type or have a similar check.
Assignee: general → jandemooij
Status: NEW → ASSIGNED
Attachment #530269 - Flags: review?(bhackett1024)
Comment on attachment 530269 [details] [diff] [review]
Patch

Nice, ran into this too when doing the overhaul-inlining patch.
Attachment #530269 - Flags: review?(bhackett1024) → review+
(Assignee)

Comment 3

6 years ago
http://hg.mozilla.org/projects/jaegermonkey/rev/974e43d7adf8
Status: ASSIGNED → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
(Reporter)

Updated

6 years ago
Blocks: 676763
(Reporter)

Comment 4

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