diff options
Diffstat (limited to 'src/vm/util.cpp')
-rw-r--r-- | src/vm/util.cpp | 39 |
1 files changed, 16 insertions, 23 deletions
diff --git a/src/vm/util.cpp b/src/vm/util.cpp index 260e0daa38..2c71289c8d 100644 --- a/src/vm/util.cpp +++ b/src/vm/util.cpp @@ -1861,8 +1861,6 @@ size_t GetLargestOnDieCacheSize(BOOL bTrueSize) STATIC_CONTRACT_NOTHROW; STATIC_CONTRACT_GC_NOTRIGGER; -#if defined(_TARGET_AMD64_) || defined (_TARGET_X86_) - static size_t maxSize; static size_t maxTrueSize; @@ -1879,6 +1877,7 @@ size_t GetLargestOnDieCacheSize(BOOL bTrueSize) } } +#if defined(_TARGET_AMD64_) || defined (_TARGET_X86_) DefaultCatchFilterParam param; param.pv = COMPLUS_EXCEPTION_EXECUTE_HANDLER; @@ -2001,18 +2000,20 @@ size_t GetLargestOnDieCacheSize(BOOL bTrueSize) { } PAL_ENDTRY +#else + maxSize = maxTrueSize = GetLogicalProcessorCacheSizeFromOS() ; // Returns the size of the highest level processor cache +#endif + +#if defined(_TARGET_ARM64_) + // Bigger gen0 size helps arm64 targets + maxSize = maxTrueSize * 3; +#endif // printf("GetLargestOnDieCacheSize returns %d, adjusted size %d\n", maxSize, maxTrueSize); if (bTrueSize) return maxTrueSize; else return maxSize; - -#else - size_t cache_size = GetLogicalProcessorCacheSizeFromOS() ; // Returns the size of the highest level processor cache - return cache_size; - -#endif } //--------------------------------------------------------------------- @@ -2845,7 +2846,6 @@ void InitializeClrNotifications() #if defined(FEATURE_GDBJIT) #include "gdbjit.h" -__declspec(thread) bool tls_isSymReaderInProgress = false; #endif // FEATURE_GDBJIT // called from the runtime @@ -2859,19 +2859,12 @@ void DACNotify::DoJITNotification(MethodDesc *MethodDescPtr) MODE_PREEMPTIVE; } CONTRACTL_END; -#if defined(FEATURE_GDBJIT) && defined(FEATURE_PAL) && !defined(CROSSGEN_COMPILE) - if(!tls_isSymReaderInProgress) - { - tls_isSymReaderInProgress = true; - NotifyGdb::MethodCompiled(MethodDescPtr); - tls_isSymReaderInProgress = false; - } -#endif + TADDR Args[2] = { JIT_NOTIFICATION, (TADDR) MethodDescPtr }; DACNotifyExceptionHelper(Args, 2); } -void DACNotify::DoJITDiscardNotification(MethodDesc *MethodDescPtr) +void DACNotify::DoJITPitchingNotification(MethodDesc *MethodDescPtr) { CONTRACTL { @@ -2883,9 +2876,9 @@ void DACNotify::DoJITDiscardNotification(MethodDesc *MethodDescPtr) CONTRACTL_END; #if defined(FEATURE_GDBJIT) && defined(FEATURE_PAL) && !defined(CROSSGEN_COMPILE) - NotifyGdb::MethodDropped(MethodDescPtr); + NotifyGdb::MethodPitched(MethodDescPtr); #endif - TADDR Args[2] = { JIT_DISCARD_NOTIFICATION, (TADDR) MethodDescPtr }; + TADDR Args[2] = { JIT_PITCHING_NOTIFICATION, (TADDR) MethodDescPtr }; DACNotifyExceptionHelper(Args, 2); } @@ -3007,10 +3000,10 @@ BOOL DACNotify::ParseJITNotification(TADDR Args[], TADDR& MethodDescPtr) return TRUE; } -BOOL DACNotify::ParseJITDiscardNotification(TADDR Args[], TADDR& MethodDescPtr) +BOOL DACNotify::ParseJITPitchingNotification(TADDR Args[], TADDR& MethodDescPtr) { - _ASSERTE(Args[0] == JIT_DISCARD_NOTIFICATION); - if (Args[0] != JIT_DISCARD_NOTIFICATION) + _ASSERTE(Args[0] == JIT_PITCHING_NOTIFICATION); + if (Args[0] != JIT_PITCHING_NOTIFICATION) { return FALSE; } |