diff options
Diffstat (limited to 'src/vm/method.cpp')
-rw-r--r-- | src/vm/method.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/vm/method.cpp b/src/vm/method.cpp index 7afe0e9de2..07636d6950 100644 --- a/src/vm/method.cpp +++ b/src/vm/method.cpp @@ -2466,7 +2466,18 @@ MethodDesc* Entry2MethodDesc(PCODE entryPoint, MethodTable *pMT) BOOL MethodDesc::IsFCallOrIntrinsic() { WRAPPER_NO_CONTRACT; - return (IsFCall() || IsArray()); + + if (IsFCall() || IsArray()) + return TRUE; + +#ifdef FEATURE_SPAN_OF_T + // Intrinsic methods on ByReference<T> or Span<T> + MethodTable * pMT = GetMethodTable(); + if (pMT->IsByRefLike() && pMT->GetModule()->IsSystem()) + return TRUE; +#endif + + return FALSE; } //******************************************************************************* |