Skip to content

Comments

Delete CORINFO_HELP_ENDCATCH#124820

Open
jkotas wants to merge 2 commits intodotnet:mainfrom
jkotas:misc
Open

Delete CORINFO_HELP_ENDCATCH#124820
jkotas wants to merge 2 commits intodotnet:mainfrom
jkotas:misc

Conversation

@jkotas
Copy link
Member

@jkotas jkotas commented Feb 24, 2026

x86 EH leftover

Also, delete unused NAOT table id

x86 EH leftover

Also, delete unused NAOT table id
Copilot AI review requested due to automatic review settings February 24, 2026 20:33
@jkotas jkotas added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Feb 24, 2026
@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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_ENDCATCH from the shared CorInfoHelpFunc enums and remove its ReadyToRun helper mapping.
  • Mark READYTORUN_HELPER_EndCatch as unused and remove the associated helper definition.
  • Remove the unused UnboxingAndInstantiatingStubMap reflection 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.

Comment on lines 416 to 420
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 */
Copy link

Copilot AI Feb 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants