From: Paul E. Murphy Date: Tue, 25 Apr 2023 21:41:51 +0000 (-0500) Subject: cmd/link/internal/loadelf: set AttrExternal on text section symbols X-Git-Tag: go1.21rc1~771 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=d816f85f787bfa5114787687b085194d1cd3b468;p=gostls13.git cmd/link/internal/loadelf: set AttrExternal on text section symbols PPC64 processes external object relocations against the section symbols. This needs to be set correctly to determine the type of PLT stub to generate when both Go and External code make PLT calls. Change-Id: I5abdd5a0473866164083c33e80324dffcc1707f0 Reviewed-on: https://go-review.googlesource.com/c/go/+/488895 Reviewed-by: Than McIntosh Reviewed-by: Dmitri Shuralyov Run-TryBot: Paul Murphy Reviewed-by: Cherry Mui TryBot-Result: Gopher Robot --- diff --git a/src/cmd/link/internal/loadelf/ldelf.go b/src/cmd/link/internal/loadelf/ldelf.go index 7ac7699996..c1bfec059d 100644 --- a/src/cmd/link/internal/loadelf/ldelf.go +++ b/src/cmd/link/internal/loadelf/ldelf.go @@ -540,6 +540,7 @@ func Load(l *loader.Loader, arch *sys.Arch, localSymVersion int, f *bio.Reader, } if sect.type_ == elf.SHT_PROGBITS { sb.SetData(sect.base[:sect.size]) + sb.SetExternal(true) } sb.SetSize(int64(sect.size))