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

[NFC] Parallelize the actual inlining part of the Inlining pass #6966

Merged
merged 6 commits into from
Sep 24, 2024

Conversation

kripken
Copy link
Member

@kripken kripken commented Sep 24, 2024

We already parallelized collecting info about functions and finding
inlining opportunities, but the actual inlining - copying the code into
the target function - was done sequentially. It turns out that a lot of
work happens there: this PR makes the pass over 2x faster.

Details:

  • Move nameHint to InliningAction, so it is there when we apply the actions.
  • Add a DoInlining internal pass which calls doInlining().
  • Refactor OptUtils a little to make it easy to run DoInlining before opts.
  • Also remove the return value of doInlining which was not used.

@kripken kripken merged commit 4d90620 into WebAssembly:main Sep 24, 2024
13 checks passed
@kripken kripken deleted the parallel.inline branch September 24, 2024 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants