Replies: 1 comment 5 replies
-
|
Roslyn doesn't know the IL of any called method at all when it comes from another assembly. It may not exist at all (using ref assembly), or being replaced at runtime (version upgrading of dependency)
It has a risk to regress JIT performance. Larger method body requires longer time to be compiled in a whole. Moreover, if a callee is inlined twice or more times, it will be compiled for more times.
ReadyToRun is expected to take the place here. |
Beta Was this translation helpful? Give feedback.
5 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
To improve faster loading time, can't Roslyn inline IL directly instead of postponing inline on JIT? I am only talking about some methods that are clearly marked as
[AgreesiveInlining], or some methods that are very small.I see JIT performing inlining correctly, but what is the idea behind not doing IL inlining at compile time?
I agree that the assembly size will increase, but will it not reduce JIT time?
Most of the startup time is eaten by 30-40% only in JIT.
Beta Was this translation helpful? Give feedback.
All reactions