-
Notifications
You must be signed in to change notification settings - Fork 2.6k
JIT: block general cloning of candidate calls #21418
JIT: block general cloning of candidate calls #21418
Conversation
Follow-up from dotnet#21270 and dotnet#21414. Block general cloning from inadvertently cloning a candidate call. Add a separate path for cloning calls that are inline and guarded devirtualization candidates for use by guarded devirtualization. Callers need to take extra steps after cloning one of these calls to properly fix everything up. Also fix up some issues in the large comment for the fat calli transformation.
@fiigii @CarolEidt PTAL Verified jitstress=2 passes on some local tests with and without guarded devirt enabled (it is still off by default). |
x64 innerloop network issue:
@dotnet-bot retest Windows_NT x64 Checked Innerloop Build and Test |
Question. |
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.
LGTM - I like factoring this out. Just a couple of comment-comments and a question.
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.
Thank you for the work.
@fiigii I suppose for completeness sake, we indeed should look at operations like |
Arm test succeeded but the parent leg network failed before it could be reported back.
|
Follow-up from #21270 and #21414. Block general cloning from inadvertently cloning a candidate call. Add a separate path for cloning calls that are inline and guarded devirtualization candidates for use by guarded devirtualization. Callers need to take extra steps after cloning one of these calls to properly fix everything up. Also fix up some issues in the large comment for the fat calli transformation.
Follow-up from dotnet/coreclr#21270 and dotnet/coreclr#21414. Block general cloning from inadvertently cloning a candidate call. Add a separate path for cloning calls that are inline and guarded devirtualization candidates for use by guarded devirtualization. Callers need to take extra steps after cloning one of these calls to properly fix everything up. Also fix up some issues in the large comment for the fat calli transformation. Commit migrated from dotnet/coreclr@08be98c
Follow-up from #21270 and #21414.
Block general cloning from inadvertently cloning a candidate call.
Add a separate path for cloning calls that are inline and guarded
devirtualization candidates for use by guarded devirtualization.
Callers need to take extra steps after cloning one of these calls
to properly fix everything up.
Also fix up some issues in the large comment for the fat calli
transformation.