-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
JIT: Allow forward substituting small-typed nodes #83969
Conversation
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch, @kunalspathak Issue Detailsnull
|
/azp run Fuzzlyn |
Azure Pipelines successfully started running 1 pipeline(s). |
Fuzzlyn failure looks unrelated, will open a separate issue for that. Going to bounce this... looks like it got caught up in the GitHub outage, the CI runs are actually finished but the check statuses haven't updated. |
/azp run runtime-coreclr jitstress, runtime-coreclr libraries-jitstress |
Azure Pipelines successfully started running 2 pipeline(s). |
The failure is #80857. Diffs. Some of the regressions are due to some casts we no longer omit without local copy prop, before: fgMorphTree BB01, STMT00004 (before)
[000016] -A--------- ▌ ASG bool
[000015] D------N--- ├──▌ LCL_VAR bool V04 tmp2
[000014] ----------- └──▌ LCL_VAR int V03 tmp1 (last use)
GenTreeNode creates assertion:
[000016] -A---+----- ▌ ASG bool
In BB01 New Local Copy Assertion: V04 == V03, index = #03
fgMorphTree BB01, STMT00003 (before)
[000010] ----------- ▌ RETURN struct
[000009] ----------- └──▌ LCL_VAR struct<System.Text.Json.Nodes.JsonNodeOptions, 1>(P) V01 loc0
└──▌ bool V01.<unknown class>:<PropertyNameCaseInsensitive>k__BackingField (offs=0x00) -> V04 tmp2 (last use)
Replacing an independently promoted local var V01 with its only field V04 for the return [000009]
Assertion prop in BB01:
Copy Assertion: V04 == V03, index = #03
[000009] ----------- ▌ LCL_VAR bool V03 tmp1
fgMorphTree BB01, STMT00003 (after)
[000010] -----+----- ▌ RETURN struct
[000009] -----+----- └──▌ LCL_VAR bool V03 tmp1 After: fgMorphTree BB01, STMT00004 (after)
[000016] -A-XG+----- ▌ ASG bool
[000015] D----+-N--- ├──▌ LCL_VAR bool V04 tmp2
[000011] ---XG+----- └──▌ IND bool
[000021] -----+----- └──▌ ADD byref
[000005] -----+----- ├──▌ LCL_VAR ref V00 this (last use)
[000020] -----+----- └──▌ CNS_INT long 134 Fseq[<unknown field>]
fgMorphTree BB01, STMT00003 (before)
[000010] ----------- ▌ RETURN struct
[000009] ----------- └──▌ LCL_VAR struct<System.Text.Json.Nodes.JsonNodeOptions, 1>(P) V01 loc0
└──▌ bool V01.<unknown class>:<PropertyNameCaseInsensitive>k__BackingField (offs=0x00) -> V04 tmp2 (last use)
Replacing an independently promoted local var V01 with its only field V04 for the return [000009]
fgMorphTree BB01, STMT00003 (after)
[000010] -----+----- ▌ RETURN struct
[000022] -----+----- └──▌ CAST int <- bool <- int
[000009] -----+----- └──▌ LCL_VAR int V04 tmp2 (last use) cc @dotnet/jit-contrib PTAL @AndyAyersMS |
#79408 (comment)