mirror of
https://github.com/refraction-networking/utls.git
synced 2025-04-06 21:47:36 +03:00
Follow the Linux Kernel 4.15 Add Arm64 minimalFeatures test Change-Id: I1c092521ba59b1e4096c27786fa0464f9ef7d311 Reviewed-on: https://go-review.googlesource.com/103636 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
61 lines
1.3 KiB
Go
61 lines
1.3 KiB
Go
// Copyright 2017 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 cpu_test
|
|
|
|
import (
|
|
"internal/cpu"
|
|
"runtime"
|
|
"testing"
|
|
)
|
|
|
|
func TestAMD64minimalFeatures(t *testing.T) {
|
|
if runtime.GOARCH == "amd64" {
|
|
if !cpu.X86.HasSSE2 {
|
|
t.Fatalf("HasSSE2 expected true, got false")
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestAVX2hasAVX(t *testing.T) {
|
|
if runtime.GOARCH == "amd64" {
|
|
if cpu.X86.HasAVX2 && !cpu.X86.HasAVX {
|
|
t.Fatalf("HasAVX expected true, got false")
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestPPC64minimalFeatures(t *testing.T) {
|
|
if runtime.GOARCH == "ppc64" || runtime.GOARCH == "ppc64le" {
|
|
if !cpu.PPC64.IsPOWER8 {
|
|
t.Fatalf("IsPOWER8 expected true, got false")
|
|
}
|
|
if !cpu.PPC64.HasVMX {
|
|
t.Fatalf("HasVMX expected true, got false")
|
|
}
|
|
if !cpu.PPC64.HasDFP {
|
|
t.Fatalf("HasDFP expected true, got false")
|
|
}
|
|
if !cpu.PPC64.HasVSX {
|
|
t.Fatalf("HasVSX expected true, got false")
|
|
}
|
|
if !cpu.PPC64.HasISEL {
|
|
t.Fatalf("HasISEL expected true, got false")
|
|
}
|
|
if !cpu.PPC64.HasVCRYPTO {
|
|
t.Fatalf("HasVCRYPTO expected true, got false")
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestARM64minimalFeatures(t *testing.T) {
|
|
if runtime.GOARCH == "arm64" {
|
|
if !cpu.ARM64.HasASIMD {
|
|
t.Fatalf("HasASIMD expected true, got false")
|
|
}
|
|
if !cpu.ARM64.HasFP {
|
|
t.Fatalf("HasFP expected true, got false")
|
|
}
|
|
}
|
|
}
|