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

Delete unnecessary and incorrect assert #2

Conversation

BruceForstall
Copy link

No description provided.

@BruceForstall
Copy link
Author

@AndyJGraham This fixes the assert.. by deleting it (it was incorrect; when I added it I was being too cautious).

@AndyJGraham AndyJGraham merged commit ed4d070 into AndyJGraham:LdpStp_Modifications Dec 7, 2022
@AndyJGraham
Copy link
Owner

Thanks, Bruce.

@AndyJGraham
Copy link
Owner

AndyJGraham commented Dec 7, 2022

Hi @BruceForstall. I am having some difficulty chasing/ reproducing an (a different) assertion that is being raised in the majority of programs generated by Fuzzlyn. Weirdly, many programs trigger this assertion when being generated, but the programs do not assert when run individually. This assertion started with your first code release a few days ago.
The assertion is as follows:

Assert failure(PID 1172724 [0x0011e4f4], Thread: 1172732 [0x11e4fc]): dw >= dwLast File: /home/andgra01/dotnet/runtime/src/coreclr/vm/debuginfostore.cpp Line: 65 Image: /home/andgra01/dotnet/runtime/artifacts/tests/coreclr/Linux.arm64.Checked/Tests/Core_Root/corerun

I have done some tracing back and this is in an attached spreadsheet, but if you could shed any light regarding what may be going on here, I would be very grateful.
CallSequenceAssert.xlsx

@BruceForstall
Copy link
Author

@AndyJGraham Do you have a small repro case generated by Fuzzlyn?

I ran a full set of stress tests on a PR with all the changes:

dotnet#79318

Issues:

  1. " Assertion failed 'ig->igInsCnt >= insNum' " on Linux arm64 in superpmi replay. I'll investigate. (https://dev.azure.com/dnceng-public/public/_build/results?buildId=103994&view=results)
  2. "dw >= dwLast" assertion in Fuzzlyn: https://dev.azure.com/dnceng-public/public/_build/results?buildId=104006&view=ms.vss-build-web.run-extensions-tab. Also, lots of these failures on arm64 in jitstress: https://dev.azure.com/dnceng-public/public/_build/results?buildId=104004&view=ms.vss-test-web.build-test-results-tab, as well as plain outerloop: https://dev.azure.com/dnceng-public/public/_build/results?buildId=104003&view=ms.vss-test-web.build-test-results-tab&runId=2227856&resultId=114453&paneView=debug. I'll look at these next, if you don't look at it first.

@AndyJGraham
Copy link
Owner

@BruceForstall A large part of my problem with reproducing the "dw >= dwLast" assertion is that I cannot generate a small case that reproduces the assertion when run. Each "failing" seed produces code that runs perfectly.
Thanks for the other links. I shall start to look at these today.

@AndyJGraham
Copy link
Owner

AndyJGraham commented Dec 9, 2022

@BruceForstall We now do have a small program that reliably causes errors.
Loader/classloader/v1/Beta1/Layout/Matrix/cs/L-1-5-3/L-1-5-3.sh
Running the DLL results (usually) results in five optimizations, 2 x ldr and 3 x str optimizations. Optimization of the str instruction in G_M413_IG14 is causing the assert. I am looking at differences between that optimization and the others, but with little success
so far.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants