mirror of
https://github.com/golang/go
synced 2024-11-05 15:06:09 -07:00
[dev.link] cmd/link: stop overwriting symbol types in loadlibfull
symGroupType was needed for dodata. Now that we have converted dodata to using the loader, stop overwriting it. Change-Id: Ie94109c0b35dd2f71a19ebb38f8cf20b6a37c624 Reviewed-on: https://go-review.googlesource.com/c/go/+/229994 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
98e3fdab3e
commit
b6df7e555e
@ -2824,7 +2824,7 @@ func addToTextp(ctxt *Link) {
|
|||||||
ctxt.Textp = textp
|
ctxt.Textp = textp
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ctxt *Link) loadlibfull(symGroupType []sym.SymKind) {
|
func (ctxt *Link) loadlibfull() {
|
||||||
|
|
||||||
// Load full symbol contents, resolve indexed references.
|
// Load full symbol contents, resolve indexed references.
|
||||||
ctxt.loader.LoadFull(ctxt.Arch, ctxt.Syms)
|
ctxt.loader.LoadFull(ctxt.Arch, ctxt.Syms)
|
||||||
@ -2890,20 +2890,6 @@ func (ctxt *Link) loadlibfull(symGroupType []sym.SymKind) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// For now, overwrite symbol type with its "group" type, as dodata
|
|
||||||
// expected. Once we converted dodata, this will probably not be
|
|
||||||
// needed.
|
|
||||||
for i, t := range symGroupType {
|
|
||||||
if t != sym.Sxxx {
|
|
||||||
s := ctxt.loader.Syms[i]
|
|
||||||
if s == nil {
|
|
||||||
panic(fmt.Sprintf("nil sym for symGroupType t=%s entry %d", t.String(), i))
|
|
||||||
}
|
|
||||||
s.Type = t
|
|
||||||
}
|
|
||||||
}
|
|
||||||
symGroupType = nil
|
|
||||||
|
|
||||||
if ctxt.Debugvlog > 1 {
|
if ctxt.Debugvlog > 1 {
|
||||||
// loadlibfull is likely a good place to dump.
|
// loadlibfull is likely a good place to dump.
|
||||||
// Only dump under -v=2 and above.
|
// Only dump under -v=2 and above.
|
||||||
|
@ -301,7 +301,7 @@ func Main(arch *sys.Arch, theArch Arch) {
|
|||||||
bench.Start("dodata")
|
bench.Start("dodata")
|
||||||
ctxt.dodata2(symGroupType)
|
ctxt.dodata2(symGroupType)
|
||||||
bench.Start("loadlibfull")
|
bench.Start("loadlibfull")
|
||||||
ctxt.loadlibfull(symGroupType) // XXX do it here for now
|
ctxt.loadlibfull() // XXX do it here for now
|
||||||
bench.Start("address")
|
bench.Start("address")
|
||||||
order := ctxt.address()
|
order := ctxt.address()
|
||||||
bench.Start("dwarfcompress")
|
bench.Start("dwarfcompress")
|
||||||
|
Loading…
Reference in New Issue
Block a user