diff options
author | Jan Kotas <jkotas@microsoft.com> | 2015-05-01 14:02:11 -0700 |
---|---|---|
committer | Jan Kotas <jkotas@microsoft.com> | 2015-05-01 14:02:11 -0700 |
commit | 25272dba24d166f8075c28cce08ac911941fcfc0 (patch) | |
tree | 048a68701545004216f3015d8d6523086f7d5ead | |
parent | 59d7ae3f1a219a479c81ce29f38066b158e51c19 (diff) | |
parent | 722ae33e917c1346959d2c3b7f90f36f29bbefcf (diff) | |
download | coreclr-25272dba24d166f8075c28cce08ac911941fcfc0.tar.gz coreclr-25272dba24d166f8075c28cce08ac911941fcfc0.tar.bz2 coreclr-25272dba24d166f8075c28cce08ac911941fcfc0.zip |
Merge pull request #905 from dotnet-bot/from-tfs
Merge changes from TFS
-rw-r--r-- | src/inc/clrconfigvalues.h | 1 | ||||
-rw-r--r-- | src/vm/codeman.cpp | 7 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/inc/clrconfigvalues.h b/src/inc/clrconfigvalues.h index b3331840d9..e3d6137ef1 100644 --- a/src/inc/clrconfigvalues.h +++ b/src/inc/clrconfigvalues.h @@ -596,6 +596,7 @@ RETAIL_CONFIG_STRING_INFO(INTERNAL_WinMDPath, W("WinMDPath"), "Path for Windows // Loader heap // CONFIG_DWORD_INFO_EX(INTERNAL_LoaderHeapCallTracing, W("LoaderHeapCallTracing"), 0, "Loader heap troubleshooting", CLRConfig::REGUTIL_default) +RETAIL_CONFIG_DWORD_INFO(INTERNAL_CodeHeapReserveForJumpStubs, W("CodeHeapReserveForJumpStubs"), 2, "Percentage of code heap to reserve for jump stubs") // // Log diff --git a/src/vm/codeman.cpp b/src/vm/codeman.cpp index 77efda3d92..1175f63c1d 100644 --- a/src/vm/codeman.cpp +++ b/src/vm/codeman.cpp @@ -2162,7 +2162,12 @@ void* EEJitManager::allocCodeRaw(CodeHeapRequestInfo *pInfo, // allocation won't fail or handle jump stub allocation gracefully (see DevDiv #381823 and // related bugs for details). // - size_t reserveForJumpStubs = pCodeHeap->maxCodeHeapSize / 64; + static int codeHeapReserveForJumpStubs = -1; + + if (codeHeapReserveForJumpStubs == -1) + codeHeapReserveForJumpStubs = CLRConfig::GetConfigValue(CLRConfig::INTERNAL_CodeHeapReserveForJumpStubs); + + size_t reserveForJumpStubs = codeHeapReserveForJumpStubs * (pCodeHeap->maxCodeHeapSize / 100); size_t minReserveForJumpStubs = sizeof(CodeHeader) + sizeof(JumpStubBlockHeader) + (size_t) DEFAULT_JUMPSTUBS_PER_BLOCK * BACK_TO_BACK_JUMP_ALLOCATE_SIZE + |