diff options
| author | Michael Matloob <matloob@golang.org> | 2026-03-18 13:34:44 -0400 |
|---|---|---|
| committer | Michael Matloob <matloob@golang.org> | 2026-03-27 10:38:09 -0700 |
| commit | 4d6a40923b7b55d48e9e7abfc3514e607d58fe40 (patch) | |
| tree | e54ef10513e6ff44edc3b8312ff7dbf294693799 /src/debug | |
| parent | 703bb60bf19f5410402fed4c736b31f2f8ec9fba (diff) | |
| download | go-4d6a40923b7b55d48e9e7abfc3514e607d58fe40.tar.xz | |
debug/buildinfo: remove macho/elf DataStart fallback code
The go version code can't read pre-1.13 go versions, but in 1.13 we
always write the go version info to the .go.buildinfo section. Remove
the fallback code because it won't be used.
See https://github.com/rsc/goversion/blob/v1.2.0/version/read.go for the
original rsc.io/goversion code that could read pre-1.13 data and
CL 173343 for the code added to go1.13 which would look for a writable
section rather than a read only section as rsc.io/goversion did.
Fixes #73060
Change-Id: I5d593d5724323351aef3ff04e04f7df96a6a6964
Reviewed-on: https://go-review.googlesource.com/c/go/+/756421
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Michael Matloob <matloob@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src/debug')
| -rw-r--r-- | src/debug/buildinfo/buildinfo.go | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/src/debug/buildinfo/buildinfo.go b/src/debug/buildinfo/buildinfo.go index d202d5050a..d943d0abe2 100644 --- a/src/debug/buildinfo/buildinfo.go +++ b/src/debug/buildinfo/buildinfo.go @@ -458,11 +458,6 @@ func (x *elfExe) DataStart() (uint64, uint64) { return s.Addr, s.Size } } - for _, p := range x.f.Progs { - if p.Type == elf.PT_LOAD && p.Flags&(elf.PF_X|elf.PF_W) == elf.PF_W { - return p.Vaddr, p.Memsz - } - } return 0, 0 } @@ -543,14 +538,6 @@ func (x *machoExe) DataStart() (uint64, uint64) { return sec.Addr, sec.Size } } - // Try the first non-empty writable segment. - const RW = 3 - for _, load := range x.f.Loads { - seg, ok := load.(*macho.Segment) - if ok && seg.Addr != 0 && seg.Filesz != 0 && seg.Prot == RW && seg.Maxprot == RW { - return seg.Addr, seg.Memsz - } - } return 0, 0 } |
