summaryrefslogtreecommitdiff
path: root/libgo/go/runtime/rdebug.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/runtime/rdebug.go')
-rw-r--r--libgo/go/runtime/rdebug.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/libgo/go/runtime/rdebug.go b/libgo/go/runtime/rdebug.go
new file mode 100644
index 0000000000..76535a905a
--- /dev/null
+++ b/libgo/go/runtime/rdebug.go
@@ -0,0 +1,27 @@
+// Copyright 2014 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package runtime
+
+import _ "unsafe" // for go:linkname
+
+// Define maxstacksize here for gccgo. For gc it is defined in
+// stack.go, but gccgo doesn't use that file. Or, for that matter,
+// maxstacksize.
+var maxstacksize uintptr = 1 << 20 // enough until runtime.main sets it for real
+
+//go:linkname setMaxStack runtime_debug.setMaxStack
+func setMaxStack(in int) (out int) {
+ out = int(maxstacksize)
+ maxstacksize = uintptr(in)
+ return out
+}
+
+//go:linkname setPanicOnFault runtime_debug.setPanicOnFault
+func setPanicOnFault(new bool) (old bool) {
+ _g_ := getg()
+ old = _g_.paniconfault
+ _g_.paniconfault = new
+ return old
+}