未验证 提交 7fc7e3cc 编写于 作者: J Jan Kotas 提交者: GitHub

Delete some dead code (#88139)

* Delete some dead code

* Delete comment referencing code that no longer exists
上级 bef8818b
......@@ -63,10 +63,6 @@ extern "C" void STDCALL ExternalMethodFixupPatchLabel(void);
extern "C" void STDCALL VirtualMethodFixupStub(void);
extern "C" void STDCALL VirtualMethodFixupPatchLabel(void);
extern "C" void STDCALL TransparentProxyStub(void);
extern "C" void STDCALL TransparentProxyStub_CrossContext();
extern "C" void STDCALL TransparentProxyStubPatchLabel(void);
#ifdef FEATURE_READYTORUN
extern "C" void STDCALL DelayLoad_MethodCall();
......
......@@ -5763,12 +5763,6 @@ HijackHandler(IN PEXCEPTION_RECORD pExceptionRecord,
// If the managed method will *NOT* be unwound by the current exception
// pass we have an error: with no Frame on the stack to report it, the
// managed method will not be included in the next stack walk.
// An example of running into this issue was DDBug 1133, where
// TransparentProxyStubIA64 had a personality routine that removed a
// transition frame. As a consequence the managed method did not
// participate in the stack walk until the exception handler was called. At
// that time the stack walking code was able to see the managed method again
// but by this time all references from this managed method were stale.
BOOL IsSafeToUnwindFrameChain(Thread* pThread, LPVOID MemoryStackFpForFrameChain)
{
// Look for the last Frame to be removed that marks a managed-to-unmanaged transition
......
......@@ -491,8 +491,4 @@ inline BOOL ClrFlushInstructionCache(LPCVOID pCodeAddr, size_t sizeOfCode, bool
// #define JIT_GetSharedGCStaticBaseNoCtor
// #define JIT_GetSharedNonGCStaticBaseNoCtor
#ifndef TARGET_UNIX
#define JIT_NewCrossContext JIT_NewCrossContext
#endif // TARGET_UNIX
#endif // __cgenx86_h__
......@@ -184,12 +184,6 @@ EXTERN_C FCDECL1(void*, JIT_GetSharedNonGCStaticBaseNoCtor_Portable, DomainLocal
extern FCDECL1(Object*, JIT_NewS_MP_FastPortable, CORINFO_CLASS_HANDLE typeHnd_);
extern FCDECL1(Object*, JIT_New, CORINFO_CLASS_HANDLE typeHnd_);
#ifndef JIT_NewCrossContext
#define JIT_NewCrossContext JIT_NewCrossContext_Portable
#endif
EXTERN_C FCDECL1(Object*, JIT_NewCrossContext, CORINFO_CLASS_HANDLE typeHnd_);
EXTERN_C FCDECL1(Object*, JIT_NewCrossContext_Portable, CORINFO_CLASS_HANDLE typeHnd_);
extern FCDECL1(StringObject*, AllocateString_MP_FastPortable, DWORD stringLength);
extern FCDECL1(StringObject*, UnframedAllocateString, DWORD stringLength);
extern FCDECL1(StringObject*, FramedAllocateString, DWORD stringLength);
......
......@@ -1758,15 +1758,6 @@ PCODE VirtualCallStubManager::ResolveWorker(StubCallSite* pCallSite,
}
}
if (insertKind != DispatchCache::IK_NONE)
{
// Because the TransparentProxy MT is process-global, we cannot cache targets for
// unshared interfaces because there is the possibility of caching a
// <token, TPMT, target> entry where target is in AD1, and then matching against
// this entry from AD2 which happens to be using the same token, perhaps for a
// completely different interface.
}
if (insertKind != DispatchCache::IK_NONE)
{
VirtualCallStubManager * pMgrForCacheElem = this;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册