Closed Bug 1275248 Opened 4 years ago Closed 4 years ago

Use MustAlias in mightAlias

Categories

(Core :: JavaScript Engine: JIT, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla49
Tracking Status
firefox49 --- fixed

People

(Reporter: h4writer, Assigned: h4writer)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Since flow alias analysis mightAlias can return 3 values. NoAlias, MayAlias and MustAlias. We currently don't use MustAlias. One of the next steps is to test for this in flow alias analysis. As a result it would be good to start using this.

This moves the logic from foldsTo to mightAlias. And foldsTo only checks if mightAlias is MustAlias to decide to replace it.
Attached patch PatchSplinter Review
Assignee: nobody → hv1989
Attachment #8755839 - Flags: review?(jdemooij)
Depends on: 1255008
Comment on attachment 8755839 [details] [diff] [review]
Patch

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

::: js/src/jit/MIR.cpp
@@ +4908,5 @@
>  MDefinition*
>  MLoadUnboxedObjectOrNull::foldsTo(TempAllocator& alloc)
>  {
> +    if (MDefinition* def = foldsToStore(alloc)) {
> +        if (def->type() != MIRType::ObjectOrNull)

Can you add a comment explaining why we need the ObjectOrNull check?
Attachment #8755839 - Flags: review?(jdemooij) → review+
Blocks: 1276181
Pushed by hv1989@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/67b41b80d37c
IonMonkey: Use MustAlias in Alias Analysis, r=jandem
https://hg.mozilla.org/integration/mozilla-inbound/rev/130a21afe562
IonMonkey: Don't alias loading of elements with different indexes, r=jandem
https://hg.mozilla.org/mozilla-central/rev/67b41b80d37c
https://hg.mozilla.org/mozilla-central/rev/130a21afe562
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla49
You need to log in before you can comment on or make changes to this bug.