]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/internal/obj: eliminate AMODE
authorJosh Bleecher Snyder <josharian@gmail.com>
Wed, 22 Mar 2017 05:21:33 +0000 (22:21 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Wed, 22 Mar 2017 14:39:07 +0000 (14:39 +0000)
AMODE appears to have been intended to allow
a Prog to switch between 16 (!), 32, or 64 bit x86.
It is unused anywhere in the tree.

Passes toolstash-check -all.

Updates #15756

Change-Id: Ic57b257cfe580f29dad81d97e4193bf3c330c598
Reviewed-on: https://go-review.googlesource.com/38445
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Dave Cheney <dave@cheney.net>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/internal/obj/x86/a.out.go
src/cmd/internal/obj/x86/anames.go
src/cmd/internal/obj/x86/obj6.go

index 02f92ed387e3f3db90096cc013453c33491be6d2..04f9ef68a4e6f805bcc4c8a6bc46f7810508ea92 100644 (file)
@@ -746,7 +746,6 @@ const (
        ARETFQ
        ASWAPGS
 
-       AMODE
        ACRC32B
        ACRC32Q
        AIMUL3Q
index 8c5be807957b0a34af91a935a1874bf93d6dd1da..38cc03d84d1e83c67944d17032bab3b1209235e3 100644 (file)
@@ -687,7 +687,6 @@ var Anames = []string{
        "RETFL",
        "RETFQ",
        "SWAPGS",
-       "MODE",
        "CRC32B",
        "CRC32Q",
        "IMUL3Q",
index 7af6dc5882832e6ef031dd889196afcf9b7b81cf..816141960207de364f503ebe2467e9cd3f2d1c6f 100644 (file)
@@ -79,17 +79,6 @@ func progedit(ctxt *obj.Link, p *obj.Prog) {
        }
        p.Mode = int8(ctxt.Mode)
 
-       switch p.As {
-       case AMODE:
-               if p.From.Type == obj.TYPE_CONST || (p.From.Type == obj.TYPE_MEM && p.From.Reg == REG_NONE) {
-                       switch int(p.From.Offset) {
-                       case 16, 32, 64:
-                               ctxt.Mode = int(p.From.Offset)
-                       }
-               }
-               obj.Nopout(p)
-       }
-
        // Thread-local storage references use the TLS pseudo-register.
        // As a register, TLS refers to the thread-local storage base, and it
        // can only be loaded into another register: