internal/gocore: update for CL 537978
CL 537978 moved some fields in heapArena to a new struct. Update
references.
Fixes golang/go#63359.
Change-Id: I01bdbd6673249ac039bfd8e1890f19eab35e164f
Reviewed-on: https://go-review.googlesource.com/c/debug/+/540297
Auto-Submit: Michael Pratt <mpratt@google.com>
Reviewed-by: Michael Knyszek <mknyszek@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
diff --git a/internal/gocore/process.go b/internal/gocore/process.go
index b76a810..7c2ed8f 100644
--- a/internal/gocore/process.go
+++ b/internal/gocore/process.go
@@ -258,8 +258,15 @@
min := core.Address(arenaSize*(level2+level1*level2size) - arenaBaseOffset)
max := min.Add(arenaSize)
- bitmap := a.Field("bitmap")
- oneBitBitmap := a.HasField("noMorePtrs") // Starting in 1.20.
+ var bitmap region
+ var oneBitBitmap bool
+ if a.HasField("heapArenaPtrScalar") { // go 1.22
+ bitmap = a.Field("heapArenaPtrScalar").Field("bitmap")
+ oneBitBitmap = true
+ } else {
+ bitmap = a.Field("bitmap")
+ oneBitBitmap = a.HasField("noMorePtrs") // Starting in 1.20.
+ }
spans := a.Field("spans")
arenas = append(arenas, arena{