summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Sienkiewicz <chsienki@microsoft.com>2018-05-24 18:10:44 -0700
committerGleb Balykov <g.balykov@samsung.com>2018-09-18 15:49:14 +0300
commitd086b14c8eca21a7928e782b444622f6d719bde1 (patch)
tree422ceff8fa164249c2dcb96ea74f8ca71e057817
parentf47c9198e740c44455cc22f665b764204f712afa (diff)
downloadcoreclr-d086b14c8eca21a7928e782b444622f6d719bde1.tar.gz
coreclr-d086b14c8eca21a7928e782b444622f6d719bde1.tar.bz2
coreclr-d086b14c8eca21a7928e782b444622f6d719bde1.zip
Ensure thumb bit is set when calling FindOrCreateInitAndAddJitInfo. Add an assert to FindOrCreateInitAndAddJitInfo when on arm to ensure the thumb bit is set
-rw-r--r--src/debug/ee/debugger.cpp2
-rw-r--r--src/debug/ee/functioninfo.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/debug/ee/debugger.cpp b/src/debug/ee/debugger.cpp
index d6b6912990..25c047d656 100644
--- a/src/debug/ee/debugger.cpp
+++ b/src/debug/ee/debugger.cpp
@@ -11115,7 +11115,7 @@ bool Debugger::HandleIPCEvent(DebuggerIPCEvent * pEvent)
// In the EnC case, if we look for an older version, we need to find the DJI by starting
// address, rather than just by MethodDesc. In the case of generics, we may need to create a DJI, so we
pDJI = pDMI->FindOrCreateInitAndAddJitInfo(pEvent->SetIP.vmMethodDesc.GetRawPtr(),
- (TADDR)pEvent->SetIP.startAddress);
+ PINSTRToPCODE((TADDR)pEvent->SetIP.startAddress));
}
if ((pDJI != NULL) && (pThread != NULL) && (pModule != NULL))
diff --git a/src/debug/ee/functioninfo.cpp b/src/debug/ee/functioninfo.cpp
index 637924c4cd..30afb0d783 100644
--- a/src/debug/ee/functioninfo.cpp
+++ b/src/debug/ee/functioninfo.cpp
@@ -1559,13 +1559,13 @@ DebuggerJitInfo *DebuggerMethodInfo::FindOrCreateInitAndAddJitInfo(MethodDesc* f
CONTRACTL_END;
_ASSERTE(fd != NULL);
+ ARM_ONLY(_ASSERTE((startAddr & THUMB_CODE) == 1))
// The debugger doesn't track Lightweight-codegen methods b/c they have no metadata.
if (fd->IsDynamicMethod())
{
return NULL;
}
-
if (startAddr == NULL)
{
// This will grab the start address for the current code version.