mirror of
https://github.com/golang/go
synced 2024-11-07 02:46:11 -07:00
[dev.link] cmd/link: use the start of compilation unit for R_ADDRCUOFF
R_ADDRCUOFF refers to the offset from the start of the compilation unit. Now that we could have multiple compilation units per package, we should use the start of the compilation unit, instead of the start of the package. Change-Id: I3d6a3c5a5c47c9ccf88091ed05413ced826f9934 Reviewed-on: https://go-review.googlesource.com/c/go/+/204828 Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Than McIntosh <thanm@google.com>
This commit is contained in:
parent
4497d7eb6f
commit
ab4a71fca7
@ -402,7 +402,7 @@ func relocsym(ctxt *Link, s *sym.Symbol) {
|
||||
case objabi.R_ADDRCUOFF:
|
||||
// debug_range and debug_loc elements use this relocation type to get an
|
||||
// offset from the start of the compile unit.
|
||||
o = Symaddr(r.Sym) + r.Add - Symaddr(r.Sym.Unit.Lib.Textp[0])
|
||||
o = Symaddr(r.Sym) + r.Add - Symaddr(r.Sym.Unit.Textp[0])
|
||||
|
||||
// r->sym can be null when CALL $(constant) is transformed from absolute PC to relative PC call.
|
||||
case objabi.R_GOTPCREL:
|
||||
|
Loading…
Reference in New Issue
Block a user