aboutsummaryrefslogtreecommitdiff
path: root/src/pkg/runtime/stack.c
diff options
context:
space:
mode:
authorShenghou Ma <minux.ma@gmail.com>2014-03-07 15:11:16 -0500
committerShenghou Ma <minux.ma@gmail.com>2014-03-07 15:11:16 -0500
commit84570aa9a18fa46dba1402004a54cedc7cf5e043 (patch)
treef1cae531ab508b4f3ff452d9bba885eb1fdb0d98 /src/pkg/runtime/stack.c
parent3d5e219e020115e98762821ac688e77b1b50787d (diff)
downloadgo-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.c6
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);