From: Josh Bleecher Snyder Date: Fri, 21 Apr 2017 21:51:37 +0000 (-0700) Subject: cmd/compile: eliminate some Linksym calls in obj.go X-Git-Tag: go1.9beta1~535 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=c2b4fb5a3bfc13618a683f1265555f89f37de550;p=gostls13.git cmd/compile: eliminate some Linksym calls in obj.go Passes toolstash-check. Change-Id: I0cb2ea9ca7ec2449999af28457270ff7b3324e92 Reviewed-on: https://go-review.googlesource.com/41410 Run-TryBot: Josh Bleecher Snyder Reviewed-by: Matthew Dempsky --- diff --git a/src/cmd/compile/internal/gc/obj.go b/src/cmd/compile/internal/gc/obj.go index 17401a4ca7..c261713fcd 100644 --- a/src/cmd/compile/internal/gc/obj.go +++ b/src/cmd/compile/internal/gc/obj.go @@ -221,9 +221,9 @@ func dumpglobls() { } for _, s := range funcsyms { - sf := s.Pkg.Lookup(funcsymname(s)) - dsymptr(sf.Linksym(), 0, s.Linksym(), 0) - ggloblsym(sf.Linksym(), int32(Widthptr), obj.DUPOK|obj.RODATA) + sf := s.Pkg.Lookup(funcsymname(s)).Linksym() + dsymptr(sf, 0, s.Linksym(), 0) + ggloblsym(sf, int32(Widthptr), obj.DUPOK|obj.RODATA) } // Do not reprocess funcsyms on next dumpglobls call. @@ -324,16 +324,18 @@ func slicebytes(nam *Node, s string, len int) { sym := localpkg.Lookup(symname) sym.Def = asTypesNode(newname(sym)) - off := dsname(sym.Linksym(), 0, s) - ggloblsym(sym.Linksym(), int32(off), obj.NOPTR|obj.LOCAL) + lsym := sym.Linksym() + off := dsname(lsym, 0, s) + ggloblsym(lsym, int32(off), obj.NOPTR|obj.LOCAL) if nam.Op != ONAME { Fatalf("slicebytes %v", nam) } + nsym := nam.Sym.Linksym() off = int(nam.Xoffset) - off = dsymptr(nam.Sym.Linksym(), off, sym.Linksym(), 0) - off = duintptr(nam.Sym.Linksym(), off, uint64(len)) - duintptr(nam.Sym.Linksym(), off, uint64(len)) + off = dsymptr(nsym, off, lsym, 0) + off = duintptr(nsym, off, uint64(len)) + duintptr(nsym, off, uint64(len)) } func dsname(s *obj.LSym, off int, t string) int {