summaryrefslogtreecommitdiff
path: root/src/vm/jitinterface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vm/jitinterface.cpp')
-rw-r--r--src/vm/jitinterface.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/vm/jitinterface.cpp b/src/vm/jitinterface.cpp
index ab5c59a8f8..519ccc266c 100644
--- a/src/vm/jitinterface.cpp
+++ b/src/vm/jitinterface.cpp
@@ -9953,8 +9953,8 @@ void* CEEInfo::getPInvokeUnmanagedTarget(CORINFO_METHOD_HANDLE method,
/*********************************************************************/
// return address of fixup area for late-bound N/Direct calls.
-void CEEInfo::getAddressOfPInvokeFixup(CORINFO_METHOD_HANDLE method,
- CORINFO_CONST_LOOKUP *pLookup)
+void* CEEInfo::getAddressOfPInvokeFixup(CORINFO_METHOD_HANDLE method,
+ void **ppIndirection)
{
CONTRACTL {
SO_TOLERANT;
@@ -9963,16 +9963,22 @@ void CEEInfo::getAddressOfPInvokeFixup(CORINFO_METHOD_HANDLE method,
MODE_PREEMPTIVE;
} CONTRACTL_END;
+ void * result = NULL;
+
+ if (ppIndirection != NULL)
+ *ppIndirection = NULL;
+
JIT_TO_EE_TRANSITION_LEAF();
MethodDesc* ftn = GetMethod(method);
_ASSERTE(ftn->IsNDirect());
NDirectMethodDesc *pMD = (NDirectMethodDesc*)ftn;
- pLookup->accessType = IAT_PVALUE;
- pLookup->addr = (LPVOID)&(pMD->GetWriteableData()->m_pNDirectTarget);
+ result = (LPVOID)&(pMD->GetWriteableData()->m_pNDirectTarget);
EE_TO_JIT_TRANSITION_LEAF();
+
+ return result;
}