Skip to content

Commit 6fa466a

Browse files
committed
Reduce default stack size from 5Mb to 1Mb
See ChangeLog.md for rationale.
1 parent 33cbb24 commit 6fa466a

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

ChangeLog.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,13 @@ See docs/process.md for more on how version tagging works.
2020

2121
2.0.21
2222
------
23+
- Default shadow stack size used by emscripten reduced from 5Mb to 1Mb. Anyone
24+
running into issues can restore the old size using `-sTOTAL_STACK=5Mb`. Since
25+
windows has max stack of 1Mb and since WebAssembly stack usage should be less
26+
than on native platforms (since its only used for address taken values) it
27+
seems like 1Mb might still be on the high side here. For reference, llvm
28+
(`wasm-ld`) use 64kb as the default stack size. `DEFAULT_PTHREAD_STACK_SIZE`
29+
was also reduces from 2Mb to 1Mb to match primary stack.
2330
- The WebAssembly linker (`wasm-ld`) now performes string tail merging on any
2431
static string data in your program. This has long been part of the native
2532
ELF linker and should not be observable in well-behaved programs. This

src/settings.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ var MEM_INIT_METHOD = 0;
113113
// assertions are on, we will assert on not exceeding this, otherwise,
114114
// it will fail silently.
115115
// [link]
116-
var TOTAL_STACK = 5*1024*1024;
116+
var TOTAL_STACK = 1*1024*1024;
117117

118118
// What malloc()/free() to use, out of
119119
// * dlmalloc - a powerful general-purpose malloc
@@ -1508,7 +1508,7 @@ var PTHREAD_POOL_DELAY_LOAD = 0;
15081508
// those that have their addresses taken, or ones that are too large to fit as
15091509
// local vars in wasm code.
15101510
// [link]
1511-
var DEFAULT_PTHREAD_STACK_SIZE = 2*1024*1024;
1511+
var DEFAULT_PTHREAD_STACK_SIZE = 1*1024*1024;
15121512

15131513
// True when building with --threadprofiler
15141514
// [link]

0 commit comments

Comments
 (0)