Skip to content

Investigate EETypePtr overhead #232

Closed
dotnet/runtime
#97207
@jkotas

Description

@jkotas

Context: #225 (comment)

RuJIT is not able to optimize out the EETypePtr wrapper completely. In the example above the EETypePtr wrapper:

  • Disables tailcall optimization. RyuJIT is not able to prove that the byrefs taken by EETypePtr are not passed into the worker method
  • Results into less efficient register allocation and instruction selection (e.g. cmp [rcx], rdx vs. mov rax, [rcx] cmp rax, rdx)

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-NativeAOT-coreclr.NET runtime optimized for ahead of time compilation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions