Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Do not coalesce unspillable tmps #10742

Conversation

justinmichaud
Copy link
Contributor

@justinmichaud justinmichaud commented Feb 27, 2023

@justinmichaud justinmichaud requested a review from a team as a code owner February 27, 2023 18:45
@justinmichaud justinmichaud self-assigned this Feb 27, 2023
@justinmichaud justinmichaud added the JavaScriptCore For bugs in JavaScriptCore, the JS engine used by WebKit, other than kxmlcore issues. label Feb 27, 2023
@justinmichaud justinmichaud force-pushed the eng/Do-not-coalesce-unspillable-tmps branch from 1a17163 to 3470cc3 Compare February 27, 2023 19:22
Copy link
Member

@Constellation Constellation left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

r=me

@justinmichaud justinmichaud force-pushed the eng/Do-not-coalesce-unspillable-tmps branch from 3470cc3 to ef2c550 Compare February 28, 2023 21:09
@justinmichaud
Copy link
Contributor Author

Perf is neutral on JS2 AS, landing

@justinmichaud justinmichaud added the merge-queue Applied to send a pull request to merge-queue label Feb 28, 2023
https://bugs.webkit.org/show_bug.cgi?id=253006
rdar://105878987

Reviewed by Yusuke Suzuki.

We have been encountering multiple test cases where we make a graph
uncolourable by coalescing too aggressively. If a tmp is marked as unspillable
because its live range is too small, it will never be un-marked if it gets
coalesced. Let's try not coalescing these registers ever.

* Source/JavaScriptCore/b3/air/AirAllocateRegistersByGraphColoring.cpp:

Canonical link: https://commits.webkit.org/260969@main
@webkit-commit-queue
Copy link
Collaborator

Committed 260969@main (c83189e): https://commits.webkit.org/260969@main

Reviewed commits have been landed. Closing PR #10742 and removing active labels.

@webkit-early-warning-system webkit-early-warning-system merged commit c83189e into WebKit:main Feb 28, 2023
@webkit-commit-queue webkit-commit-queue removed the merge-queue Applied to send a pull request to merge-queue label Feb 28, 2023
@justinmichaud justinmichaud deleted the eng/Do-not-coalesce-unspillable-tmps branch April 12, 2024 20:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JavaScriptCore For bugs in JavaScriptCore, the JS engine used by WebKit, other than kxmlcore issues.
Projects
None yet
4 participants