未验证 提交 3df94def 编写于 作者: Z Zoltan Varga 提交者: GitHub

[mono][jit] Disable inlining for constrained calls on gshared parameters. (#77274)

The concrete method cannot be looked up so 'cmethod' is still the interface method.

Related: https://github.com/dotnet/runtime/pull/76724.
上级 76c960bd
......@@ -7837,7 +7837,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
}
/* Inlining */
if ((cfg->opt & MONO_OPT_INLINE) && !inst_tailcall &&
if ((cfg->opt & MONO_OPT_INLINE) && !inst_tailcall && !gshared_static_virtual &&
(!virtual_ || !(cmethod->flags & METHOD_ATTRIBUTE_VIRTUAL) || MONO_METHOD_IS_FINAL (cmethod)) &&
mono_method_check_inlining (cfg, cmethod)) {
int costs;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册