Skip to content

Conversation

@kripken
Copy link
Member

@kripken kripken commented Jan 23, 2024

This causes overhead atm since in VMs executing a string.const will actually allocate a
string, and more copies means more allocations. For now, just do not add more. This
required changes to two passes.

@kripken kripken requested a review from tlively January 23, 2024 21:09
@kripken
Copy link
Member Author

kripken commented Jan 24, 2024

PTAL @gkdn

@gkdn
Copy link
Contributor

gkdn commented Jan 24, 2024

PTAL @gkdn

Thanks for the quick fix. It LGTM but quickly running some numbers to validate.

@gkdn
Copy link
Contributor

gkdn commented Jan 24, 2024

All looks good.

@kripken kripken merged commit 9090ce5 into WebAssembly:main Jan 24, 2024
@kripken kripken deleted the no.inline.string branch January 24, 2024 01:30
kripken added a commit to kripken/binaryen that referenced this pull request Jan 30, 2024
@kripken kripken mentioned this pull request Jan 30, 2024
kripken added a commit that referenced this pull request Jan 31, 2024
This reverts commit 9090ce5.

This has the effect of once more propagating string constants from
globals to other places (and from non-globals too), which is useful
for various optimizations even if it isn't useful in the final output.
To fix the final output problem, #6257 added a pass that is run at the
end to collect string.const to globals, which allows us to once more
propagate strings in the optimizer, now without a downside.
radekdoulik pushed a commit to dotnet/binaryen that referenced this pull request Jul 12, 2024
This causes overhead atm since in VMs executing a string.const will actually allocate a
string, and more copies means more allocations. For now, just do not add more. This
required changes to two passes: SimplifyGlobals and Precompute.
radekdoulik pushed a commit to dotnet/binaryen that referenced this pull request Jul 12, 2024
WebAssembly#6258)

This reverts commit 9090ce5.

This has the effect of once more propagating string constants from
globals to other places (and from non-globals too), which is useful
for various optimizations even if it isn't useful in the final output.
To fix the final output problem, WebAssembly#6257 added a pass that is run at the
end to collect string.const to globals, which allows us to once more
propagate strings in the optimizer, now without a downside.
@gkdn gkdn mentioned this pull request Aug 31, 2024
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.

3 participants