Closed
Description
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
)