Closed Bug 897063 Opened 6 years ago Closed 6 years ago

PJS: Add TypedArray .length stub for GetPropertyIC

Categories

(Core :: JavaScript Engine, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla25

People

(Reporter: shu, Assigned: shu)

Details

Attachments

(1 file)

No description provided.
Attached patch patchSplinter Review
Assignee: general → shu
Attachment #779805 - Flags: review?(jdemooij)
Comment on attachment 779805 [details] [diff] [review]
patch

Review of attachment 779805 [details] [diff] [review]:
-----------------------------------------------------------------

::: js/src/ion/IonCaches.cpp
@@ +1063,5 @@
> +    Register tmpReg;
> +    if (output.hasValue()) {
> +        tmpReg = output.valueReg().scratchReg();
> +    } else {
> +        JS_ASSERT(output.type() == MIRType_Int32);

The sequential IC checks

"cache.output().type() != MIRType_Value && cache.output().type() != MIRType_Int32"

and does not attach a stub in that case. Don't we need that check for the parallel IC too?
Attachment #779805 - Flags: review?(jdemooij) → review+
(In reply to Jan de Mooij [:jandem] from comment #2)
> Comment on attachment 779805 [details] [diff] [review]
> patch
> 
> Review of attachment 779805 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> ::: js/src/ion/IonCaches.cpp
> @@ +1063,5 @@
> > +    Register tmpReg;
> > +    if (output.hasValue()) {
> > +        tmpReg = output.valueReg().scratchReg();
> > +    } else {
> > +        JS_ASSERT(output.type() == MIRType_Int32);
> 
> The sequential IC checks
> 
> "cache.output().type() != MIRType_Value && cache.output().type() !=
> MIRType_Int32"
> 
> and does not attach a stub in that case. Don't we need that check for the
> parallel IC too?

Ah, good catch. I missed that when copying.
https://hg.mozilla.org/mozilla-central/rev/bf069935cd61
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
You need to log in before you can comment on or make changes to this bug.