Conversation
x86 EH leftover Also, delete unused NAOT table id
|
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
There was a problem hiding this comment.
Pull request overview
Removes the legacy CORINFO_HELP_ENDCATCH JIT helper (x86 EH leftover) from the JIT/EE interface and ReadyToRun helper mapping, and cleans up an unused NativeAOT reflection map blob id. The JIT/EE interface version GUID is updated accordingly.
Changes:
- Delete
CORINFO_HELP_ENDCATCHfrom the sharedCorInfoHelpFuncenums and remove its ReadyToRun helper mapping. - Mark
READYTORUN_HELPER_EndCatchas unused and remove the associated helper definition. - Remove the unused
UnboxingAndInstantiatingStubMapreflection map blob id (leave the numeric slot unused).
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/coreclr/tools/aot/ILCompiler.ReadyToRun/JitInterface/CorInfoImpl.ReadyToRun.cs | Drops R2R mapping for the removed JIT helper. |
| src/coreclr/tools/Common/JitInterface/CorInfoHelpFunc.cs | Removes the managed mirror enum entry for CORINFO_HELP_ENDCATCH. |
| src/coreclr/tools/Common/Internal/Runtime/MetadataBlob.cs | Marks blob id 15 as unused (removes unused NAOT table id). |
| src/coreclr/inc/readytorunhelpers.h | Removes READYTORUN_HELPER_EndCatch helper macro entry. |
| src/coreclr/inc/readytorun.h | Keeps the helper enum value but annotates it as unused since R2R v14.0. |
| src/coreclr/inc/jithelpers.h | Removes the helper table entry for CORINFO_HELP_ENDCATCH. |
| src/coreclr/inc/jiteeversionguid.h | Updates the JIT/EE version identifier GUID due to interface change. |
| src/coreclr/inc/corinfo.h | Removes the native shared enum entry for CORINFO_HELP_ENDCATCH. |
| CORINFO_HELP_METHOD_ACCESS_EXCEPTION,//Throw an access exception due to a failed member/class access check. | ||
| CORINFO_HELP_FIELD_ACCESS_EXCEPTION, | ||
| CORINFO_HELP_CLASS_ACCESS_EXCEPTION, | ||
|
|
||
| CORINFO_HELP_ENDCATCH, // call back into the EE at the end of a catch block | ||
|
|
||
| /* Synchronization */ |
There was a problem hiding this comment.
CORINFO_HELP_ENDCATCH was removed from CorInfoHelpFunc, but there is still a remaining reference in the JIT (src/coreclr/jit/utils.cpp, HelperCallProperties::init() switch has a case CORINFO_HELP_ENDCATCH:). This will fail to compile once the enum entry is deleted. Remove/update that switch case (and any similar logic) as part of this change.
x86 EH leftover
Also, delete unused NAOT table id