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

[mono][interp] Remove short branches #105386

Merged
merged 4 commits into from
Aug 2, 2024

Conversation

BrzVlad
Copy link
Member

@BrzVlad BrzVlad commented Jul 24, 2024

They don't really seem to have perf benefits, at the expense of quite a bit of implementation cost with existing issues that are awkward to fix.

BrzVlad added 3 commits July 23, 2024 12:23
…sets

Previously they were all short branches without long counterparts. This was buggy and awkward because we tried to compute early conservatively whether a branch is short or long, at superins generation time. The conditions would always hold and we had no fallback if the branch didn't turn out to actually be short. Having a long offset for these branches should have negligible perf impact.
…pass

We generate superins without caring if the branch is long or short since the superinstructions use a long offset now.
Copy link
Contributor

Tagging subscribers to this area: @BrzVlad, @kotlarmilos
See info in area-owners.md if you want to be subscribed.

@BrzVlad BrzVlad force-pushed the fix-interp-short-branches branch from 057e2bd to 6a54c14 Compare July 24, 2024 13:42
@lewing lewing requested a review from kg July 24, 2024 14:56
@BrzVlad BrzVlad force-pushed the fix-interp-short-branches branch 4 times, most recently from a519562 to ea69694 Compare July 30, 2024 13:37
They don't seem to have any benefit at the expense of a lot of code and added complexity.
@BrzVlad
Copy link
Member Author

BrzVlad commented Aug 2, 2024

@kg It wouldn't hurt to take another look at this, just in case by deleting some of the long short opcodes I'm accidentally breaking generation of some traces. The microbenchmarks should show something anyway if that is the case though.

@kg
Copy link
Member

kg commented Aug 2, 2024

I'll take a look at the stats on browser-bench, and it should show up in microbenchmarks for sure. Thanks for pushing this across the finish line :)

BrzVlad added a commit to BrzVlad/runtime that referenced this pull request Aug 9, 2024
BrzVlad added a commit that referenced this pull request Aug 9, 2024
* Revert "[wasm] Fix long branches in jiterpreter (#106030)"

This reverts commit 9fa8fd5.

* Revert "[mono][interp] Remove short branches (#105386)"

This reverts commit ac89819.
@github-actions github-actions bot locked and limited conversation to collaborators Sep 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants