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

Fix assert about maximum fragment split size #92027

Merged
merged 1 commit into from
Sep 14, 2023

Conversation

BruceForstall
Copy link
Member

@BruceForstall BruceForstall commented Sep 13, 2023

We want to support arbitrary DOTNET_JitSplitFunctionSize values for stressing the unwind fragment splitting logic, but there are limitations to the smallest size that can be split. Thus, we can exceed a specified minimum. Loosen an assert that the last fragment be less than the specified split size, since it might exceed that minimum, e.g., by being a large epilog. Leave the assert specifying the hard requirement of maximum fragment size.

Fixes #91251

We want to support arbitrary `DOTNET_JitSplitFunctionSize` values
for stressing the unwind fragment splitting logic, but there are
limitations to the smallest size that can be split. Thus, we can
exceed a specified minimum. Loosen an assert that the last
fragment be less than the specified split size, since it might
exceed that minimum, e.g., by being a large epilog. Leave the assert
specifying the hard requirement of maximum fragment size.
@dotnet-issue-labeler dotnet-issue-labeler bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Sep 13, 2023
@ghost ghost assigned BruceForstall Sep 13, 2023
@ghost
Copy link

ghost commented Sep 13, 2023

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

Issue Details

We want to support arbitrary DOTNET_JitSplitFunctionSize values for stressing the unwind fragment splitting logic, but there are limitations to the smallest size that can be split. Thus, we can exceed a specified minimum. Loosen an assert that the last fragment be less than the specified split size, since it might exceed that minimum, e.g., by being a large epilog. Leave the assert specifying the hard requirement of maximum fragment size.

Author: BruceForstall
Assignees: BruceForstall
Labels:

area-CodeGen-coreclr

Milestone: -

@BruceForstall
Copy link
Member Author

@jakobbotsch PTAL
cc @dotnet/jit-contrib

@AndyAyersMS
Copy link
Member

Is this for #91139 or for #91251 or for both of them?

@BruceForstall
Copy link
Member Author

Is this for #91139 or for #91251 or for both of them?

Just #91251 (I updated the comment above).

@BruceForstall BruceForstall merged commit 385247e into dotnet:main Sep 14, 2023
127 checks passed
@BruceForstall BruceForstall deleted the Fix91251 branch September 14, 2023 06:20
@ghost ghost locked as resolved and limited conversation to collaborators Oct 14, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Assertion failed 'curSize < maxSplitSize' during 'Emit code'
3 participants