summaryrefslogtreecommitdiff
path: root/src/vm/eetwain.cpp
diff options
context:
space:
mode:
authorJonghyun Park <parjong@gmail.com>2017-02-03 11:15:28 +0900
committerJan Kotas <jkotas@microsoft.com>2017-02-02 18:15:28 -0800
commit03a27899e86c0334e499151cf27cc6ddd3aebd4e (patch)
treee6dbc3036787702e28d39f95b6afbe57ae2db1b3 /src/vm/eetwain.cpp
parent047df06e939b7dface0641c1bfbb9db137390c82 (diff)
downloadcoreclr-03a27899e86c0334e499151cf27cc6ddd3aebd4e.tar.gz
coreclr-03a27899e86c0334e499151cf27cc6ddd3aebd4e.tar.bz2
coreclr-03a27899e86c0334e499151cf27cc6ddd3aebd4e.zip
[x86/Linux] Do NOT use GSCookie on Funclet (#9290)
Diffstat (limited to 'src/vm/eetwain.cpp')
-rw-r--r--src/vm/eetwain.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/vm/eetwain.cpp b/src/vm/eetwain.cpp
index 8db5396ece..44f42a4a4d 100644
--- a/src/vm/eetwain.cpp
+++ b/src/vm/eetwain.cpp
@@ -5468,6 +5468,13 @@ void * EECodeManager::GetGSCookieAddr(PREGDISPLAY pContext,
GCInfoToken gcInfoToken = pCodeInfo->GetGCInfoToken();
unsigned relOffset = pCodeInfo->GetRelOffset();
+#ifdef WIN64EXCEPTIONS
+ if (pCodeInfo->IsFunclet())
+ {
+ return NULL;
+ }
+#endif
+
#if defined(_TARGET_X86_)
CodeManStateBuf * stateBuf = (CodeManStateBuf*)pState->stateBuf;
@@ -5507,11 +5514,6 @@ void * EECodeManager::GetGSCookieAddr(PREGDISPLAY pContext,
}
#elif defined(USE_GC_INFO_DECODER)
- if (pCodeInfo->IsFunclet())
- {
- return NULL;
- }
-
GcInfoDecoder gcInfoDecoder(
gcInfoToken,
DECODE_GS_COOKIE