mirror of
https://github.com/golang/go
synced 2024-11-24 06:00:11 -07:00
cmd/vet/all: use SizesFor to calculate archbits
Change-Id: I99706807782f11e8d24baf953424a9e292a2cbac Reviewed-on: https://go-review.googlesource.com/37668 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Rob Pike <r@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
99fbccbd93
commit
3d77bc081d
@ -15,6 +15,7 @@ import (
|
|||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
"go/build"
|
"go/build"
|
||||||
|
"go/types"
|
||||||
"internal/testenv"
|
"internal/testenv"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
@ -108,11 +109,11 @@ type whitelist map[string]int
|
|||||||
|
|
||||||
// load adds entries from the whitelist file, if present, for os/arch to w.
|
// load adds entries from the whitelist file, if present, for os/arch to w.
|
||||||
func (w whitelist) load(goos string, goarch string) {
|
func (w whitelist) load(goos string, goarch string) {
|
||||||
// Look up whether goarch is a 32-bit or 64-bit architecture.
|
sz := types.SizesFor("gc", goarch)
|
||||||
archbits, ok := nbits[goarch]
|
if sz == nil {
|
||||||
if !ok {
|
log.Fatalf("unknown type sizes for arch %q", goarch)
|
||||||
log.Fatalf("unknown bitwidth for arch %q", goarch)
|
|
||||||
}
|
}
|
||||||
|
archbits := 8 * sz.Sizeof(types.Typ[types.UnsafePointer])
|
||||||
|
|
||||||
// Look up whether goarch has a shared arch suffix,
|
// Look up whether goarch has a shared arch suffix,
|
||||||
// such as mips64x for mips64 and mips64le.
|
// such as mips64x for mips64 and mips64le.
|
||||||
@ -338,23 +339,6 @@ NextLine:
|
|||||||
os.Stdout.Write(buf.Bytes())
|
os.Stdout.Write(buf.Bytes())
|
||||||
}
|
}
|
||||||
|
|
||||||
// nbits maps from architecture names to the number of bits in a pointer.
|
|
||||||
// TODO: figure out a clean way to avoid get this info rather than listing it here yet again.
|
|
||||||
var nbits = map[string]int{
|
|
||||||
"386": 32,
|
|
||||||
"amd64": 64,
|
|
||||||
"amd64p32": 32,
|
|
||||||
"arm": 32,
|
|
||||||
"arm64": 64,
|
|
||||||
"mips": 32,
|
|
||||||
"mipsle": 32,
|
|
||||||
"mips64": 64,
|
|
||||||
"mips64le": 64,
|
|
||||||
"ppc64": 64,
|
|
||||||
"ppc64le": 64,
|
|
||||||
"s390x": 64,
|
|
||||||
}
|
|
||||||
|
|
||||||
// archAsmX maps architectures to the suffix usually used for their assembly files,
|
// archAsmX maps architectures to the suffix usually used for their assembly files,
|
||||||
// if different than the arch name itself.
|
// if different than the arch name itself.
|
||||||
var archAsmX = map[string]string{
|
var archAsmX = map[string]string{
|
||||||
|
Loading…
Reference in New Issue
Block a user