]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/link: eliminate markextra
authorMatthew Dempsky <mdempsky@google.com>
Sat, 11 Mar 2017 06:22:11 +0000 (22:22 -0800)
committerMatthew Dempsky <mdempsky@google.com>
Sun, 12 Mar 2017 11:05:10 +0000 (11:05 +0000)
This appears to be leftover from when instruction selection happened
in the linker. Many of the morestackX functions listed don't even
exist anymore.

Now that we select instructions within the compiler and assembler,
normal deadcode elimination mechanisms should suffice for these
symbols.

Change-Id: I2cb1e435101392e7c983957c4acfbbcc87a5ca7d
Reviewed-on: https://go-review.googlesource.com/38077
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/cmd/link/internal/ld/deadcode.go

index 5d19f407cc8e17a89430614ef0af52620abbb504..c616d5d5a85062d59d90bab3c68aa53b64314107 100644 (file)
@@ -127,27 +127,6 @@ func deadcode(ctxt *Link) {
        ctxt.Textp = textp
 }
 
-var markextra = []string{
-       "runtime.morestack",
-       "runtime.morestackx",
-       "runtime.morestack00",
-       "runtime.morestack10",
-       "runtime.morestack01",
-       "runtime.morestack11",
-       "runtime.morestack8",
-       "runtime.morestack16",
-       "runtime.morestack24",
-       "runtime.morestack32",
-       "runtime.morestack40",
-       "runtime.morestack48",
-
-       // on arm, lock in the div/mod helpers too
-       "_div",
-       "_divu",
-       "_mod",
-       "_modu",
-}
-
 // methodref holds the relocations from a receiver type symbol to its
 // method. There are three relocations, one for each of the fields in
 // the reflect.method struct: mtyp, ifn, and tfn.
@@ -222,9 +201,6 @@ func (d *deadcodepass) init() {
 
        if SysArch.Family == sys.ARM {
                // mark some functions that are only referenced after linker code editing
-               if obj.GOARM == 5 {
-                       names = append(names, "_sfloat")
-               }
                names = append(names, "runtime.read_tls_fallback")
        }
 
@@ -254,7 +230,6 @@ func (d *deadcodepass) init() {
                                }
                        }
                }
-               names = append(names, markextra...)
                for _, s := range dynexp {
                        d.mark(s, nil)
                }