diff options
author | Jan Kotas <jkotas@microsoft.com> | 2017-05-17 05:49:01 -0700 |
---|---|---|
committer | Jan Vorlicek <janvorli@microsoft.com> | 2017-05-17 05:49:01 -0700 |
commit | b6f9dbf426d688af91021357c49d9b17c5bdf525 (patch) | |
tree | 440b4cd19376ddd66e343a9ff83af855e9adc2f0 /src/vm/stubmgr.cpp | |
parent | 4704e9af61bd23695e382bc498553e457d3be77a (diff) | |
download | coreclr-b6f9dbf426d688af91021357c49d9b17c5bdf525.tar.gz coreclr-b6f9dbf426d688af91021357c49d9b17c5bdf525.tar.bz2 coreclr-b6f9dbf426d688af91021357c49d9b17c5bdf525.zip |
Switch multicast delegate stub on Windows x64 to use stubs-as-il (#11624)
Fixes #11611. The old hand generated assembly path did not work well for structs passed by reference.
Diffstat (limited to 'src/vm/stubmgr.cpp')
-rw-r--r-- | src/vm/stubmgr.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/vm/stubmgr.cpp b/src/vm/stubmgr.cpp index e30fb3792e..bc6f47aab5 100644 --- a/src/vm/stubmgr.cpp +++ b/src/vm/stubmgr.cpp @@ -1706,14 +1706,14 @@ BOOL ILStubManager::DoTraceStub(PCODE stubStartAddress, PCODE traceDestination = NULL; -#ifdef FEATURE_STUBS_AS_IL +#ifdef FEATURE_MULTICASTSTUB_AS_IL MethodDesc* pStubMD = ExecutionManager::GetCodeMethodDesc(stubStartAddress); if (pStubMD != NULL && pStubMD->AsDynamicMethodDesc()->IsMulticastStub()) { traceDestination = GetEEFuncEntryPoint(StubHelpers::MulticastDebuggerTraceHelper); } else -#endif // FEATURE_STUBS_AS_IL +#endif // FEATURE_MULTICASTSTUB_AS_IL { // This call is going out to unmanaged code, either through pinvoke or COM interop. traceDestination = stubStartAddress; @@ -1813,7 +1813,7 @@ BOOL ILStubManager::TraceManager(Thread *thread, PCODE stubIP = GetIP(pContext); *pRetAddr = (BYTE *)StubManagerHelpers::GetReturnAddress(pContext); -#ifdef FEATURE_STUBS_AS_IL +#ifdef FEATURE_MULTICASTSTUB_AS_IL if (stubIP == GetEEFuncEntryPoint(StubHelpers::MulticastDebuggerTraceHelper)) { stubIP = (PCODE)*pRetAddr; @@ -1830,7 +1830,7 @@ BOOL ILStubManager::TraceManager(Thread *thread, // See code:ILStubCache.CreateNewMethodDesc for the code that sets flags on stub MDs PCODE target; -#ifdef FEATURE_STUBS_AS_IL +#ifdef FEATURE_MULTICASTSTUB_AS_IL if(pStubMD->IsMulticastStub()) { _ASSERTE(GetIP(pContext) == GetEEFuncEntryPoint(StubHelpers::MulticastDebuggerTraceHelper)); @@ -1859,7 +1859,7 @@ BOOL ILStubManager::TraceManager(Thread *thread, } else -#endif // FEATURE_STUBS_AS_IL +#endif // FEATURE_MULTICASTSTUB_AS_IL if (pStubMD->IsReverseStub()) { if (pStubMD->IsStatic()) |