Skip to content

Move reflection invocation in coreclr to fully managed way #100696

Open
@janvorli

Description

@janvorli

Currently, the first invocation of a method via reflection goes via a native code path using the RuntimeMethodHandle::InvokeMethod and the following invocations use dynamically generated managed code. The usage of the native code path is there to improve startup time.
However, we can mitigate the startup time impact by precompiling reflection invocation stubs to a few dozen most common signatures. Then we can get rid of the native code path completely.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions