]> Cypherpunks repositories - gostls13.git/commitdiff
Revert "cmd/link: prefix syms with "_" on external darwin links"
authorCherry Zhang <cherryyz@google.com>
Thu, 12 Sep 2019 20:43:42 +0000 (20:43 +0000)
committerCherry Zhang <cherryyz@google.com>
Thu, 12 Sep 2019 21:02:57 +0000 (21:02 +0000)
This reverts CL 194381

Reason for revert: break tests like add2line.

Change-Id: I9e858c7ada340a842bd0cad719616ad30fae4aaa
Reviewed-on: https://go-review.googlesource.com/c/go/+/195137
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
src/cmd/link/internal/ld/issue33808_test.go [deleted file]
src/cmd/link/internal/ld/macho.go

diff --git a/src/cmd/link/internal/ld/issue33808_test.go b/src/cmd/link/internal/ld/issue33808_test.go
deleted file mode 100644 (file)
index df928a7..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-// Copyright 2019 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package ld
-
-import (
-       "internal/testenv"
-       "io/ioutil"
-       "os"
-       "runtime"
-       "strings"
-       "testing"
-)
-
-const prog = `
-package main
-
-import "log"
-
-func main() {
-       log.Fatalf("HERE")
-}
-`
-
-func TestIssue33808(t *testing.T) {
-       if runtime.GOOS != "darwin" {
-               return
-       }
-       testenv.MustHaveGoBuild(t)
-
-       dir, err := ioutil.TempDir("", "TestIssue33808")
-       if err != nil {
-               t.Fatalf("could not create directory: %v", err)
-       }
-       defer os.RemoveAll(dir)
-
-       f := gobuild(t, dir, prog, "-ldflags=-linkmode=external")
-       f.Close()
-
-       syms, err := f.Symbols()
-       if err != nil {
-               t.Fatalf("Error reading symbols: %v", err)
-       }
-
-       name := "log.Fatalf"
-       for _, sym := range syms {
-               if strings.Contains(sym.Name, name) {
-                       return
-               }
-       }
-       t.Fatalf("Didn't find %v", name)
-}
index 7453f37c62fec81c459eaa43cd24bed5e96a9b1f..02e133e31d45952ee63875893effbe13a6a7d216 100644 (file)
@@ -869,7 +869,6 @@ func machosymtab(ctxt *Link) {
                symtab.AddUint32(ctxt.Arch, uint32(symstr.Size))
 
                export := machoShouldExport(ctxt, s)
-               isGoSymbol := strings.Contains(s.Extname(), ".")
 
                // In normal buildmodes, only add _ to C symbols, as
                // Go symbols have dot in the name.
@@ -878,8 +877,8 @@ func machosymtab(ctxt *Link) {
                // symbols like crosscall2 are in pclntab and end up
                // pointing at the host binary, breaking unwinding.
                // See Issue #18190.
-               cexport := !isGoSymbol && (ctxt.BuildMode != BuildModePlugin || onlycsymbol(s))
-               if cexport || export || isGoSymbol {
+               cexport := !strings.Contains(s.Extname(), ".") && (ctxt.BuildMode != BuildModePlugin || onlycsymbol(s))
+               if cexport || export {
                        symstr.AddUint8('_')
                }