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
LOAD_CONST_IMMORTAL doesn't survive being instrumented and de-instrumented. #128685
When instrumenting, instructions are first de-optimized to their base instruction.
When instrumentation is removed we assume that specialization will restore the specialized instruction.
However, that doesn't happen for LOAD_CONST_IMMORTAL because LOAD_CONST_IMMORTAL isn't a specialization form of LOAD_CONST, but a quickened form of it.
The fix should be simple. Instead of quickening LOAD_CONST to LOAD_CONST_IMMORTAL, we add a LOAD_CONST_MORTAL and have LOAD_CONST specialize (rather than quicken) to either LOAD_CONST_MORTAL or LOAD_CONST_IMMORTAL.
changed the title [-]`LOAD_CONST_IMMORTAL` doesn't survive being instrumented and de-instruemented.[/-][+]`LOAD_CONST_IMMORTAL` doesn't survive being instrumented and de-instrumented.[/+]on Jan 9, 2025
Activity
[-]`LOAD_CONST_IMMORTAL` doesn't survive being instrumented and de-instruemented.[/-][+]`LOAD_CONST_IMMORTAL` doesn't survive being instrumented and de-instrumented.[/+]GH-128685: Specialize (rather than quicken) LOAD_CONST into LOAD_CONS…