aboutsummaryrefslogtreecommitdiff
path: root/libgo/go/runtime/panic.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/runtime/panic.go')
-rw-r--r--libgo/go/runtime/panic.go24
1 files changed, 5 insertions, 19 deletions
diff --git a/libgo/go/runtime/panic.go b/libgo/go/runtime/panic.go
index f6747f5..11396b4 100644
--- a/libgo/go/runtime/panic.go
+++ b/libgo/go/runtime/panic.go
@@ -210,6 +210,11 @@ func panicmem() {
panic(memoryError)
}
+func panicmemAddr(addr uintptr) {
+ panicCheck2("invalid memory address or nil pointer dereference")
+ panic(errorAddressString{msg: "invalid memory address or nil pointer dereference", addr: addr})
+}
+
// deferproc creates a new deferred function.
// The compiler turns a defer statement into a call to this.
// frame points into the stack frame; it is used to determine which
@@ -292,15 +297,6 @@ func newdefer() *_defer {
systemstack(func() {
d = new(_defer)
})
- if debugCachedWork {
- // Duplicate the tail below so if there's a
- // crash in checkPut we can tell if d was just
- // allocated or came from the pool.
- d.heap = true
- d.link = gp._defer
- gp._defer = d
- return d
- }
}
d.heap = true
return d
@@ -1176,12 +1172,6 @@ func startpanic_m() bool {
}
}
-// throwReportQuirk, if non-nil, is called by throw after dumping the stacks.
-//
-// TODO(austin): Remove this after Go 1.15 when we remove the
-// mlockGsignal workaround.
-var throwReportQuirk func()
-
var didothers bool
var deadlock mutex
@@ -1228,10 +1218,6 @@ func dopanic_m(gp *g, pc, sp uintptr) bool {
printDebugLog()
- if throwReportQuirk != nil {
- throwReportQuirk()
- }
-
return docrash
}