aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/panic.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/panic.go')
-rw-r--r--src/runtime/panic.go14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/runtime/panic.go b/src/runtime/panic.go
index 127843b081..aed17d6fc6 100644
--- a/src/runtime/panic.go
+++ b/src/runtime/panic.go
@@ -212,6 +212,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})
+}
+
// Create a new deferred function fn with siz bytes of arguments.
// The compiler turns a defer statement into a call to this.
//go:nosplit
@@ -416,15 +421,6 @@ func newdefer(siz int32) *_defer {
total := roundupsize(totaldefersize(uintptr(siz)))
d = (*_defer)(mallocgc(total, deferType, true))
})
- 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.siz = siz
- d.link = gp._defer
- gp._defer = d
- return d
- }
}
d.siz = siz
d.heap = true