-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
Don't propagate const TYP_REF as TYP_I_IMPL #75661
Conversation
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue DetailsFixes jitstress issues from #75659 and #75644 Jit was propagating CNS_INT TYP_REF gc handle as TYP_I_IMPL, e.g.:
Even folded gc-handle + 12 then
|
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
…non-zero constants, e.g. GTF_ICON_STATIC_HDL
@EgorBo, thanks for the quick fix. Do we need to backport this to 7.0? |
No, it's Main-only. Frozen strings exposed many cases where JIT was not ready for constant gc handles 😞 but it's my fault that I didn't run all the outerloop/stress tests as part of that PR |
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
CI failures so far:
|
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
Azure Pipelines successfully started running 5 pipeline(s). |
/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr jitstressregs, runtime-coreclr gcstress0x3-gcstress0xc, Fuzzlyn |
Azure Pipelines successfully started running 5 pipeline(s). |
CI failures so far:
|
Fixes #75657
Fixes #75659
Fixes #75644
Those jitstress tests found more cases in JIT where it does not expect non-zero gc const handles - still wonder how it worked for NativeAOT.
Jit was propagating CNS_INT TYP_REF gc handle as TYP_I_IMPL, e.g.:
Even folded gc-handle + 12 then