From d343478295f8635e60014fa9481ccea04b6c53a8 Mon Sep 17 00:00:00 2001 From: Matthew Dempsky Date: Fri, 10 Mar 2017 22:22:11 -0800 Subject: [PATCH] cmd/link: eliminate markextra 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 TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- src/cmd/link/internal/ld/deadcode.go | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/src/cmd/link/internal/ld/deadcode.go b/src/cmd/link/internal/ld/deadcode.go index 5d19f407cc..c616d5d5a8 100644 --- a/src/cmd/link/internal/ld/deadcode.go +++ b/src/cmd/link/internal/ld/deadcode.go @@ -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) } -- 2.48.1