1
0
mirror of https://github.com/golang/go synced 2024-11-11 18:41:36 -07:00

[dev.garbage] runtime: raise StackGuard limit for Windows (again)

640 bytes ought to be enough for anybody.

We'll bring this back down before Go 1.5. That's issue 9214.

TBR=rlh
CC=golang-codereviews
https://golang.org/cl/188730043
This commit is contained in:
Russ Cox 2014-12-05 19:50:09 -05:00
parent fa6c54953c
commit db40624110
3 changed files with 4 additions and 4 deletions

View File

@ -17,7 +17,7 @@ enum {
#endif // Windows
StackBig = 4096,
StackGuard = 512 + StackSystem,
StackGuard = 640 + StackSystem,
StackSmall = 128,
StackLimit = StackGuard - StackSystem - StackSmall,
};

View File

@ -84,7 +84,7 @@ const (
// The stack guard is a pointer this many bytes above the
// bottom of the stack.
_StackGuard = 512 + _StackSystem
_StackGuard = 640 + _StackSystem
// After a stack split check the SP is allowed to be this
// many bytes below the stack guard. This saves an instruction

View File

@ -268,11 +268,11 @@ TestCases:
name := m[1]
size, _ := strconv.Atoi(m[2])
// The limit was originally 128 but is now 384.
// The limit was originally 128 but is now 512.
// Instead of rewriting the test cases above, adjust
// the first stack frame to use up the extra 32 bytes.
if i == 0 {
size += 384 - 128
size += 512 - 128
}
if size%ptrSize == 4 {