Bug 1158223 - Tweak XPConnect stack size on 64bit Windows. (r=bholley)
authorShu-yu Guo <shu@rfrn.org>
Thu, 07 May 2015 18:16:53 -0700
changeset 242912 98f15494f0d47b1f1d9db26cfa34d55d415fb7cc
parent 242911 db23832bc2816c961c100a234fcc1d829630e764
child 242913 cade54db387c971000eee1f6a27336c5da41aa65
push id28713
push userkwierso@gmail.com
push dateFri, 08 May 2015 17:06:43 +0000
treeherdermozilla-central@fd5e9b7eec13 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbholley
bugs1158223
milestone40.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1158223 - Tweak XPConnect stack size on 64bit Windows. (r=bholley)
js/xpconnect/src/XPCJSRuntime.cpp
--- a/js/xpconnect/src/XPCJSRuntime.cpp
+++ b/js/xpconnect/src/XPCJSRuntime.cpp
@@ -3389,17 +3389,17 @@ XPCJSRuntime::XPCJSRuntime(nsXPConnect* 
     // On normal builds, the largest stack frame size we might encounter is
     // 9.0k (see above), so let's use a buffer of 9.0 * 3 * 10 = 270k.
     const size_t kStackQuota =  2 * kDefaultStackQuota;
     const size_t kTrustedScriptBuffer = 270 * 1024;
 #elif defined(XP_WIN)
     // 1MB is the default stack size on Windows, so use 900k.
     // Windows PGO stack frames have unfortunately gotten pretty large lately. :-(
     const size_t kStackQuota = 900 * 1024;
-    const size_t kTrustedScriptBuffer = (sizeof(size_t) == 8) ? 140 * 1024
+    const size_t kTrustedScriptBuffer = (sizeof(size_t) == 8) ? 160 * 1024
                                                               : 100 * 1024;
     // The following two configurations are linux-only. Given the numbers above,
     // we use 50k and 100k trusted buffers on 32-bit and 64-bit respectively.
 #elif defined(DEBUG)
     // Bug 803182: account for the 4x difference in the size of js::Interpret
     // between optimized and debug builds.
     // XXXbholley - Then why do we only account for 2x of difference?
     const size_t kStackQuota = 2 * kDefaultStackQuota;