summaryrefslogtreecommitdiff
path: root/src/vm/method.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vm/method.cpp')
-rw-r--r--src/vm/method.cpp13
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;
}
//*******************************************************************************