You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Assertion failed 'block->lastNode()->OperGet() == GT_RETFILT' during 'Generate code' (IL size 1480; hash 0x46e9aa75; FullOpts) #85088
This doesn't fail in the current main, but does fail with a tree from several days ago (e.g., 3713168). I'm assuming that some recent JIT change perturbed the IR but didn't actually fix the issue.
@jakobbotsch This is due to physical promotion. I didn't know physical promotion was part of our usual stress mix at this point; is that appropriate?
On x86, GT_RETFILT must be the last operation of a filter/finally return. But it appears physical promotion inserts a "read back" after the RETFILT node:
*** NYI: Conservatively marked as read-back
STMT00096 ( 0x344[E-] ... 0x344 )
[000568] ----------- * RETFILT void
Reading back replacement V11.[000..004) -> V98 at the end of BB35
but the STMT00191 and [001190] and related nodes do not appear in the dump before this location. It would be helpful to dump them when they are created so it's more obvious to see who is creating them and why.
As mentioned above, this doesn't fail in main. Has it been intentionally fixed, or did IR perturbations make it "go away"?
@jakobbotsch This is due to physical promotion. I didn't know physical promotion was part of our usual stress mix at this point; is that appropriate?
It is meant to be fully functional (but maybe not profitable), so I'd say so.
On x86, GT_RETFILT must be the last operation of a filter/finally return. But it appears physical promotion inserts a "read back" after the RETFILT node:
*** NYI: Conservatively marked as read-back
STMT00096 ( 0x344[E-] ... 0x344 )
[000568] ----------- * RETFILT void
Reading back replacement V11.[000..004) -> V98 at the end of BB35
but the STMT00191 and [001190] and related nodes do not appear in the dump before this location. It would be helpful to dump them when they are created so it's more obvious to see who is creating them and why.
Makes sense, I will make sure to dump these when they are created. FWIW, physical promotion just uses fgInsertStmtNearEnd, so it seems that helper is lacking handling for these blocks. I'll fix it.
As mentioned above, this doesn't fail in main. Has it been intentionally fixed, or did IR perturbations make it "go away"?
Activity
kunalspathak commentedon Apr 20, 2023
@BruceForstall - Can this be related to your recent refactoring work?
BruceForstall commentedon Apr 20, 2023
Unknown, but I'll take a look
BruceForstall commentedon Apr 25, 2023
This doesn't fail in the current
main, but does fail with a tree from several days ago (e.g., 3713168). I'm assuming that some recent JIT change perturbed the IR but didn't actually fix the issue.BruceForstall commentedon Apr 26, 2023
@jakobbotsch This is due to physical promotion. I didn't know physical promotion was part of our usual stress mix at this point; is that appropriate?
On x86, GT_RETFILT must be the last operation of a filter/finally return. But it appears physical promotion inserts a "read back" after the RETFILT node:
Note; the IR dump after the phase is:
but the
STMT00191and[001190]and related nodes do not appear in the dump before this location. It would be helpful to dump them when they are created so it's more obvious to see who is creating them and why.As mentioned above, this doesn't fail in
main. Has it been intentionally fixed, or did IR perturbations make it "go away"?jakobbotsch commentedon Apr 26, 2023
It is meant to be fully functional (but maybe not profitable), so I'd say so.
Makes sense, I will make sure to dump these when they are created. FWIW, physical promotion just uses
fgInsertStmtNearEnd, so it seems that helper is lacking handling for these blocks. I'll fix it.#85105 may have altered the IR as a side effect.
JIT: Handle GT_RETFILT in fgInsertStmtNearEnd
JIT: Handle GT_RETFILT in fgInsertStmtNearEnd (#85420)