-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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] Allow a single call when inlining methods #83548
Conversation
…y possible to inline List.get_Item
Tagging subscribers to this area: @BrzVlad, @kotlarmilos Issue DetailsThis combined with #83490 would allow inlining List.get_Item, since it contains a single call to a ThrowHelper.
|
Doesn't work right because I need to save/restore the TransformData flag when inlining, I think. Looking into it. |
…hods Don't allow doesnotreturn method calls to disable inlining, since we know they are unlikely to be called
Fixed it, should be ready for review now. In my testing it takes the V8.Crypto benchmark from dotnet/performance down to ~180ms from a baseline of 260-280ms. EDIT: Previous measurement (~80ms) was combined with #83490, this by itself is ~180ms |
This combined with #83490 would allow inlining List.get_Item, since it contains a single call to a ThrowHelper.
DoesNotReturn method calls also no longer prohibit inlining, which will help for methods that call ThrowHelper in a never-taken* branch and then make a single call that does actual work.