-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Description
Description
When fixing issue #45326 I disabled the ability of the JIT compiler to generate methods with both an inlined call frame and a reverse p/invoke transition with PR #55092. This causes a slight performance degradation in methods which would otherwise have both transitions. This was needed as the existing logic would setup the InlinedCallFrame while not in cooperative mode, thus causing periodic crashes. This should be changed to logic such that the function performs the reverse pinvoke logic before setting up the InlinedCallFrame, and removes the InlinedCallFrame before returning back to preemptive mode.
Configuration
All, although the assertion in bug #45326 can only occur on Windows X86. On other platforms, this would manifest as a much more rare crash.
Regression?
A bit. I don't have data.
category:cq
theme:inlining
skill-level:expert
cost:large
impact:small