-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Add localloc empty stack verification #73109
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
Conversation
Tagging subscribers to this area: @JulieLeeMSFT Issue DetailsAccording to III.3.47 stack must be empty before
|
Co-authored-by: Jan Kotas <[email protected]>
Co-authored-by: Jan Kotas <[email protected]>
{ | ||
} | ||
|
||
.class public auto ansi beforefieldinit LocAllocTests |
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.
Could you please add a positive test as well?
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.
Sure, added test for stack underflow & positive test
/azp run runtime-coreclr outerloop |
Azure Pipelines successfully started running 1 pipeline(s). |
Co-authored-by: Dan Moseley <[email protected]>
/azp run runtime-coreclr outerloop |
Azure Pipelines successfully started running 1 pipeline(s). |
@trylek @jkoritzinsky The tests at https://github.com/dotnet/runtime/tree/main/src/tests/ilverify are not running as part of |
I have taken a first look. I believe the problem is not a direct consequence of test merging even though it may have been affected by some of the related script refactorings. In particular, the |
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.
I have verified that the tests are passing locally.
Thank you! |
Glad I could help! |
As JanK noticed in dotnet#73109, outerloop tests don't run the ilverify/ILVerificationTests.csproj test project. This is because the project is somewhat atypical in residing just one directory level beneath the test binary root folder; all other tests reside under at least two directory levels and the legacy XUnit wrapper generator reflects it so that each wrapper corresponds to a two-level directory subtree. The pre-existing logic for determining active two-level test directories was quite hacky and perf-costly; I probably accidentally removed the support for single-subfolder tests in one of my refactorings of the src/tests/build.proj script. This change fixes it and makes the construction of TestDirectories much more efficient as we no longer construct a Carthesian product of all tests and all two-level folder directories. Thanks Tomas
As JanK noticed in #73109, outerloop tests don't run the ilverify/ILVerificationTests.csproj test project. This is because the project is somewhat atypical in residing just one directory level beneath the test binary root folder; all other tests reside under at least two directory levels and the legacy XUnit wrapper generator reflects it so that each wrapper corresponds to a two-level directory subtree. The pre-existing logic for determining active two-level test directories was quite hacky and perf-costly; I probably accidentally removed the support for single-subfolder tests in one of my refactorings of the src/tests/build.proj script. This change fixes it and makes the construction of TestDirectories much more efficient as we no longer construct a Carthesian product of all tests and all two-level folder directories. Thanks Tomas
According to III.3.47 stack must be empty before
localloc
instruction