From f1f626de5382220f3b34fd3f5616d5c0868b3561 Mon Sep 17 00:00:00 2001 From: Cherry Mui Date: Tue, 5 Oct 2021 10:48:24 -0400 Subject: [PATCH] cmd/link: mangle function name with ABI on XCOFF This is like CL 304432 and CL 307229, for XCOFF. With this, GOEXPERIMENT=regabi works on AIX/PPC64. Change-Id: I8cf00681df5c93f397913febd78f38099d91e7c8 Reviewed-on: https://go-review.googlesource.com/c/go/+/353972 Trust: Cherry Mui Run-TryBot: Cherry Mui TryBot-Result: Go Bot Reviewed-by: Than McIntosh --- src/cmd/link/internal/ld/xcoff.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/cmd/link/internal/ld/xcoff.go b/src/cmd/link/internal/ld/xcoff.go index b57ccb4fe0..aba6138c83 100644 --- a/src/cmd/link/internal/ld/xcoff.go +++ b/src/cmd/link/internal/ld/xcoff.go @@ -822,9 +822,12 @@ func (f *xcoffFile) writeSymbolFunc(ctxt *Link, x loader.Sym) []xcoffSym { } } + name = ldr.SymExtname(x) + name = mangleABIName(ctxt, ldr, x, name) + s := &XcoffSymEnt64{ Nsclass: C_EXT, - Noffset: uint32(xfile.stringTable.add(ldr.SymExtname(x))), + Noffset: uint32(xfile.stringTable.add(name)), Nvalue: uint64(ldr.SymValue(x)), Nscnum: f.getXCOFFscnum(ldr.SymSect(x)), Ntype: SYM_TYPE_FUNC, -- 2.48.1