mirror of
https://github.com/golang/go
synced 2024-11-18 14:44:41 -07:00
cmd/link: fix build on plan9/amd64
Support for multiple text sections was added in CL 27790. However, this change broke the build on plan9/amd64. In relocsym, the R_ADDROFF relocation was changed to use offsets relative to the start of the first text section. However, Segtext.Vaddr is the address of the text segment, while we expect to start from the first section (text.runtime) of the text segment. Fixes #17411. Change-Id: I86bbcbda81cea735b0ecf156eab2e6e5d63acce3 Reviewed-on: https://go-review.googlesource.com/30911 Run-TryBot: David du Colombier <0intro@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
6c517df4da
commit
29c600bba1
@ -591,7 +591,7 @@ func relocsym(ctxt *Link, s *Symbol) {
|
||||
// to the start of the first text section, even if there are multiple.
|
||||
|
||||
if r.Sym.Sect.Name == ".text" {
|
||||
o = Symaddr(r.Sym) - int64(Segtext.Vaddr) + r.Add
|
||||
o = Symaddr(r.Sym) - int64(Segtext.Sect.Vaddr) + r.Add
|
||||
} else {
|
||||
o = Symaddr(r.Sym) - int64(r.Sym.Sect.Vaddr) + r.Add
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user