]> Cypherpunks repositories - gostls13.git/commitdiff
debug/dwarf: read DWARF 5 cu base offsets on SeekPC() path
authorThan McIntosh <thanm@golang.org>
Tue, 11 Mar 2025 13:16:05 +0000 (09:16 -0400)
committerThan McIntosh <thanm@golang.org>
Tue, 11 Mar 2025 15:18:19 +0000 (08:18 -0700)
This patch fixes a bug in CL 655976 relating to DWARF 5 support; we
were reading in compile unit base offsets on the Seek() path but not
on the corresponding SeekPC path (we need the offsets to be read in
both cases).

Updates #26379.
Fixes #72778.

Change-Id: I02850b786a53142307219292f2c5099eb0271559
Reviewed-on: https://go-review.googlesource.com/c/go/+/656675
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>

src/debug/dwarf/entry.go

index ed0f213a3c0dc9ee22729b39157a0ab0952d2f57..07b9259be5a8d66ee2f018e2d54d78e8d9f2ca0c 100644 (file)
@@ -919,6 +919,7 @@ func (r *Reader) SeekPC(pc uint64) (*Entry, error) {
                r.cu = nil
                u := &r.d.unit[unit]
                r.b = makeBuf(r.d, u, "info", u.off, u.data)
+               r.collectDwarf5BaseOffsets(u)
                e, err := r.Next()
                if err != nil {
                        return nil, err