-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Use PGO for Optimize Bools and If Conversion #113080
Comments
While looking at this, it would have also been great to finally get rid of if conversion / conditional moves restriction inside the loops, at the very least for simple selects - it emits jumps around single movs which is terrible. It is a sorely outdated restriction which ruins the codegen quality when compared to LLVM despite RyuJIT being capable of producing competitive output. |
Agreed. The code was written very conservatively to make sure there were no perf regressions. It'd be good to re-think the approach. |
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
For NativeAOT, the cost is not a concern. |
Both Optmize Bools and If Conversion use hard coded cost values to decide whether to optimize. Instead, when available, both of these should use PGO data make the decision instead.
See #112945 (comment) for discussion
The text was updated successfully, but these errors were encountered: