diff options
author | Jonghyun Park <parjong@gmail.com> | 2017-02-08 18:29:23 +0900 |
---|---|---|
committer | Jan Vorlicek <janvorli@microsoft.com> | 2017-02-08 10:29:23 +0100 |
commit | 0dc81ab6810e43253411ae76a780c8291650da0f (patch) | |
tree | cd833354bbd7e42d6aacf48b859126393d305ab3 /src/inc | |
parent | 272cc4e755e6ef4570d70b815a03c15c7a9ccc1b (diff) | |
download | coreclr-0dc81ab6810e43253411ae76a780c8291650da0f.tar.gz coreclr-0dc81ab6810e43253411ae76a780c8291650da0f.tar.bz2 coreclr-0dc81ab6810e43253411ae76a780c8291650da0f.zip |
[x86/Linux] Use SP as StackMarker (#9389)
Diffstat (limited to 'src/inc')
-rw-r--r-- | src/inc/regdisp.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/inc/regdisp.h b/src/inc/regdisp.h index 390711f36f..cae06098ff 100644 --- a/src/inc/regdisp.h +++ b/src/inc/regdisp.h @@ -135,12 +135,21 @@ inline PCODE GetControlPC(REGDISPLAY *display) { inline BOOL IsInCalleesFrames(REGDISPLAY *display, LPVOID stackPointer) { LIMITED_METHOD_CONTRACT; +#ifdef WIN64EXCEPTIONS + return stackPointer < ((LPVOID)(display->SP)); +#else return (TADDR)stackPointer < display->PCTAddr; +#endif } inline TADDR GetRegdisplayStackMark(REGDISPLAY *display) { LIMITED_METHOD_DAC_CONTRACT; +#ifdef WIN64EXCEPTIONS + _ASSERTE(GetRegdisplaySP(display) == GetSP(display->pCurrentContext)); + return GetRegdisplaySP(display); +#else return display->PCTAddr; +#endif } #elif defined(_WIN64) |