diff options
author | Rahul Kumar <rahku@microsoft.com> | 2016-07-11 18:10:13 -0700 |
---|---|---|
committer | Rahul Kumar <rahku@microsoft.com> | 2016-07-12 12:24:26 -0700 |
commit | de4f885883857eb1bdfc50bebdb5475b1dbfc87e (patch) | |
tree | 3d9dfcbe4a6fc258c9ccd6c738dc12e44edd234e /src/vm/stubhelpers.cpp | |
parent | 36efe1f7527ed207b25283832b035a0db0fee2c8 (diff) | |
download | coreclr-de4f885883857eb1bdfc50bebdb5475b1dbfc87e.tar.gz coreclr-de4f885883857eb1bdfc50bebdb5475b1dbfc87e.tar.bz2 coreclr-de4f885883857eb1bdfc50bebdb5475b1dbfc87e.zip |
ARM64: In GetDelegateTarget a portion of the _WIN64 code was under _TARGET_AMD64_ whereas at other places (like NDirectStubLinker::DoNDirect & InlinedCallFrame::HasFunction ) related code is under _WIN64. Make the code in GetDelegateTarget to be in sync with other functions and remove ifdef _TARGET_ADM64_. Without this change for arm64 InlinedCallFrame::m_datum stores unmanaged target pointer but StackWalker assumes it to be a NDirectMethodDesc and tries to dereference it and crashes.
Diffstat (limited to 'src/vm/stubhelpers.cpp')
-rw-r--r-- | src/vm/stubhelpers.cpp | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/vm/stubhelpers.cpp b/src/vm/stubhelpers.cpp index bb2af8e052..6e8ac761e0 100644 --- a/src/vm/stubhelpers.cpp +++ b/src/vm/stubhelpers.cpp @@ -1245,9 +1245,7 @@ FCIMPL2(void*, StubHelpers::GetDelegateTarget, DelegateObject *pThisUNSAFE, UINT UINT_PTR target = (UINT_PTR)orefThis->GetMethodPtrAux(); // The lowest bit is used to distinguish between MD and target on 64-bit. -#ifdef _TARGET_AMD64_ target = (target << 1) | 1; -#endif // _TARGET_AMD64_ // On 64-bit we pass the real target to the stub-for-host through this out argument, // see IL code gen in NDirectStubLinker::DoNDirect for details. |