Bug 1119363 - Tweak trusted stack buffer size to give Win64 PGO more room. (r=bholley)
authorShu-yu Guo <shu@rfrn.org>
Tue, 27 Jan 2015 17:06:23 -0800
changeset 226141 fe0a5e20d1f46a7529418d3a8c10a1a25bd751f9
parent 226140 ec859a233c28e28e1f7144fdd9b17a4a22fcbb4f
child 226142 58222952d07345035416a192a1c521f337dc250b
push id54765
push usershu@rfrn.org
push dateWed, 28 Jan 2015 01:04:24 +0000
treeherdermozilla-inbound@58222952d073 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbholley
bugs1119363
milestone38.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 1119363 - Tweak trusted stack buffer size to give Win64 PGO more room. (r=bholley)
js/xpconnect/src/XPCJSRuntime.cpp
--- a/js/xpconnect/src/XPCJSRuntime.cpp
+++ b/js/xpconnect/src/XPCJSRuntime.cpp
@@ -3287,17 +3287,17 @@ XPCJSRuntime::XPCJSRuntime(nsXPConnect* 
     // On normal builds, the largest stack frame size we might encounter is
     // 8.2k, so let's use a buffer of 8.2 * 3 * 10 = 246k.
     const size_t kStackQuota =  2 * kDefaultStackQuota;
     const size_t kTrustedScriptBuffer = 246 * 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) ? 120 * 1024
+    const size_t kTrustedScriptBuffer = (sizeof(size_t) == 8) ? 140 * 1024
                                                               : 80 * 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;