-
Notifications
You must be signed in to change notification settings - Fork 4k
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
Restore fluent call depth #33907
Restore fluent call depth #33907
Conversation
@@ -33,7 +33,7 @@ public void OverflowOnFluentCall() | |||
numberFluentCalls = 460; | |||
break; | |||
case 32 when !isDebug: | |||
numberFluentCalls = 1000; | |||
numberFluentCalls = 1300; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1300 [](start = 40, length = 4)
nit: I think it will be possible to restore this to 1350 (and bump all other values by 50 as well). That would close #25606
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Locally at least I can do that. Will see if it holds up in CI.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You could restore the other values as well (+50) to close the linked issue. Thanks
In reply to: 263190688 [](ancestors = 263190688)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Add "Closes #25606"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's in the commit where the change was done. I put it there in case I had to revert that part of the change to get the PR through.
85de151
to
a8d9e39
Compare
The change to move nullable to a two state solution inadverntently changed how the CLR inlines a number of method calls. The combination of not-inlining and over-inlining caused us to have a much larger "frame" for analyzing a fluent call and exceeded our tolerance levels. This adjusts the inlining so that we get the same results as before. closes dotnet#33775
@dotnet/roslyn-compiler for review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM Thanks (iteration 3)
…erride dotnet#33907 Environment variable to customize the location of Metalama temp directory
The change to move nullable to a two state solution inadverntently
changed how the CLR inlines a number of method calls. The combination of
not-inlining and over-inlining caused us to have a much larger "frame"
for analyzing a fluent call and exceeded our tolerance levels.
This adjusts the inlining so that we get the same results as before.
closes #33775