diff options
| author | Shenghou Ma <minux.ma@gmail.com> | 2014-03-07 15:11:16 -0500 |
|---|---|---|
| committer | Shenghou Ma <minux.ma@gmail.com> | 2014-03-07 15:11:16 -0500 |
| commit | 84570aa9a18fa46dba1402004a54cedc7cf5e043 (patch) | |
| tree | f1cae531ab508b4f3ff452d9bba885eb1fdb0d98 /src/pkg/runtime/stack.c | |
| parent | 3d5e219e020115e98762821ac688e77b1b50787d (diff) | |
| download | go-84570aa9a18fa46dba1402004a54cedc7cf5e043.tar.xz | |
runtime: round stack size to power of 2.
Fixes build on windows/386 and plan9/386.
Fixes #7487.
LGTM=mattn.jp, dvyukov, rsc
R=golang-codereviews, mattn.jp, dvyukov, 0intro, rsc
CC=golang-codereviews
https://golang.org/cl/72360043
Diffstat (limited to 'src/pkg/runtime/stack.c')
| -rw-r--r-- | src/pkg/runtime/stack.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/pkg/runtime/stack.c b/src/pkg/runtime/stack.c index d1ba2bfdb9..ead9ba59c1 100644 --- a/src/pkg/runtime/stack.c +++ b/src/pkg/runtime/stack.c @@ -555,8 +555,8 @@ copystack(G *gp, uintptr nframes, uintptr newsize) } // round x up to a power of 2. -static int32 -round2(int32 x) +int32 +runtime·round2(int32 x) { int32 s; @@ -683,7 +683,7 @@ runtime·newstack(void) if(framesize < StackMin) framesize = StackMin; framesize += StackSystem; - framesize = round2(framesize); + framesize = runtime·round2(framesize); stk = runtime·stackalloc(gp, framesize); if(gp->stacksize > runtime·maxstacksize) { runtime·printf("runtime: goroutine stack exceeds %D-byte limit\n", (uint64)runtime·maxstacksize); |
