Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Ignatov <sergign60@mail.ru>2017-02-06 20:00:32 +0300
committerSergey Ignatov <sergign60@mail.ru>2017-02-06 20:00:32 +0300
commit2f39084514b02b76456034a446cec7018e80e88b (patch)
tree495951ae78ca5a9006a78ca8e867b8f40b1cc8ad /src/Native/Runtime/coreclr
parente6f4d76b00c514366f4ee277c470f032c7675d01 (diff)
Fixed FEATURE_REDHAWK variant of GcInfoDecoder::GetRegisterSlot
Diffstat (limited to 'src/Native/Runtime/coreclr')
-rw-r--r--src/Native/Runtime/coreclr/gcinfodecoder.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/Native/Runtime/coreclr/gcinfodecoder.cpp b/src/Native/Runtime/coreclr/gcinfodecoder.cpp
index f152befe9..5cdf63464 100644
--- a/src/Native/Runtime/coreclr/gcinfodecoder.cpp
+++ b/src/Native/Runtime/coreclr/gcinfodecoder.cpp
@@ -1477,10 +1477,11 @@ OBJECTREF* GcInfoDecoder::GetRegisterSlot(
_ASSERTE(regNum != 13); // sp
#ifdef FEATURE_REDHAWK
- PTR_UIntNative *ppReg;
+ PTR_UIntNative *ppReg = pRD->pR0;
+ if (regNum > 12) regNum--; // rsp is skipped in Redhawk RegDisplay
+ return (OBJECTREF*)*(ppReg + regNum);
#else
DWORD **ppReg;
-#endif
if(regNum <= 3)
{
@@ -1499,7 +1500,7 @@ OBJECTREF* GcInfoDecoder::GetRegisterSlot(
ppReg = &pRD->pR4;
return (OBJECTREF*)*(ppReg + regNum-4);
-
+#endif
}
#ifdef FEATURE_PAL