var internal/cpu.X86
133 uses
internal/cpu (current package)
cpu.go#L23: var X86 struct {
cpu_x86.go#L73: {Name: "adx", Feature: &X86.HasADX},
cpu_x86.go#L74: {Name: "aes", Feature: &X86.HasAES},
cpu_x86.go#L75: {Name: "erms", Feature: &X86.HasERMS},
cpu_x86.go#L76: {Name: "fsrm", Feature: &X86.HasFSRM},
cpu_x86.go#L77: {Name: "pclmulqdq", Feature: &X86.HasPCLMULQDQ},
cpu_x86.go#L78: {Name: "rdtscp", Feature: &X86.HasRDTSCP},
cpu_x86.go#L79: {Name: "sha", Feature: &X86.HasSHA},
cpu_x86.go#L80: {Name: "vpclmulqdq", Feature: &X86.HasAVX512VPCLMULQDQ},
cpu_x86.go#L87: option{Name: "popcnt", Feature: &X86.HasPOPCNT},
cpu_x86.go#L88: option{Name: "sse3", Feature: &X86.HasSSE3},
cpu_x86.go#L89: option{Name: "sse41", Feature: &X86.HasSSE41},
cpu_x86.go#L90: option{Name: "sse42", Feature: &X86.HasSSE42},
cpu_x86.go#L91: option{Name: "ssse3", Feature: &X86.HasSSSE3})
cpu_x86.go#L97: option{Name: "avx", Feature: &X86.HasAVX},
cpu_x86.go#L98: option{Name: "avx2", Feature: &X86.HasAVX2},
cpu_x86.go#L99: option{Name: "bmi1", Feature: &X86.HasBMI1},
cpu_x86.go#L100: option{Name: "bmi2", Feature: &X86.HasBMI2},
cpu_x86.go#L101: option{Name: "fma", Feature: &X86.HasFMA})
cpu_x86.go#L107: option{Name: "avx512f", Feature: &X86.HasAVX512F},
cpu_x86.go#L108: option{Name: "avx512cd", Feature: &X86.HasAVX512CD},
cpu_x86.go#L109: option{Name: "avx512bw", Feature: &X86.HasAVX512BW},
cpu_x86.go#L110: option{Name: "avx512dq", Feature: &X86.HasAVX512DQ},
cpu_x86.go#L111: option{Name: "avx512vl", Feature: &X86.HasAVX512VL},
cpu_x86.go#L126: X86.HasSSE3 = isSet(ecx1, cpuid_SSE3)
cpu_x86.go#L127: X86.HasPCLMULQDQ = isSet(ecx1, cpuid_PCLMULQDQ)
cpu_x86.go#L128: X86.HasSSSE3 = isSet(ecx1, cpuid_SSSE3)
cpu_x86.go#L129: X86.HasSSE41 = isSet(ecx1, cpuid_SSE41)
cpu_x86.go#L130: X86.HasSSE42 = isSet(ecx1, cpuid_SSE42)
cpu_x86.go#L131: X86.HasPOPCNT = isSet(ecx1, cpuid_POPCNT)
cpu_x86.go#L132: X86.HasAES = isSet(ecx1, cpuid_AES)
cpu_x86.go#L137: X86.HasOSXSAVE = isSet(ecx1, cpuid_OSXSAVE)
cpu_x86.go#L142: if X86.HasOSXSAVE {
cpu_x86.go#L154: X86.HasAVX = isSet(ecx1, cpuid_AVX) && osSupportsAVX
cpu_x86.go#L162: X86.HasFMA = isSet(ecx1, cpuid_FMA) && X86.HasAVX && X86.HasOSXSAVE
cpu_x86.go#L170: X86.HasBMI1 = isSet(ebx7, cpuid_BMI1)
cpu_x86.go#L171: X86.HasAVX2 = isSet(ebx7, cpuid_AVX2) && osSupportsAVX
cpu_x86.go#L172: X86.HasBMI2 = isSet(ebx7, cpuid_BMI2)
cpu_x86.go#L173: X86.HasERMS = isSet(ebx7, cpuid_ERMS)
cpu_x86.go#L174: X86.HasADX = isSet(ebx7, cpuid_ADX)
cpu_x86.go#L175: X86.HasSHA = isSet(ebx7, cpuid_SHA)
cpu_x86.go#L176: X86.HasVAES = isSet(ecx7, cpuid_VAES) && X86.HasAVX
cpu_x86.go#L178: X86.HasAVX512F = isSet(ebx7, cpuid_AVX512F) && osSupportsAVX512
cpu_x86.go#L179: if X86.HasAVX512F {
cpu_x86.go#L180: X86.HasAVX512CD = isSet(ebx7, cpuid_AVX512CD)
cpu_x86.go#L181: X86.HasAVX512BW = isSet(ebx7, cpuid_AVX512BW)
cpu_x86.go#L182: X86.HasAVX512DQ = isSet(ebx7, cpuid_AVX512DQ)
cpu_x86.go#L183: X86.HasAVX512VL = isSet(ebx7, cpuid_AVX512VL)
cpu_x86.go#L184: X86.HasAVX512GFNI = isSet(ecx7, cpuid_AVX512GFNI)
cpu_x86.go#L185: X86.HasAVX512BITALG = isSet(ecx7, cpuid_AVX512BITALG)
cpu_x86.go#L186: X86.HasAVX512VPOPCNTDQ = isSet(ecx7, cpuid_AVX512VPOPCNTDQ)
cpu_x86.go#L187: X86.HasAVX512VBMI = isSet(ecx7, cpuid_AVX512VBMI)
cpu_x86.go#L188: X86.HasAVX512VBMI2 = isSet(ecx7, cpuid_AVX512VBMI2)
cpu_x86.go#L189: X86.HasAVX512VAES = isSet(ecx7, cpuid_VAES) && X86.HasAES && isSet(ebx7, cpuid_AVX512VL)
cpu_x86.go#L190: X86.HasAVX512VNNI = isSet(ecx7, cpuid_AVX512VNNI)
cpu_x86.go#L191: X86.HasAVX512VPCLMULQDQ = isSet(ecx7, cpuid_AVX512VPCLMULQDQ)
cpu_x86.go#L192: X86.HasAVX512VBMI = isSet(ecx7, cpuid_AVX512_VBMI)
cpu_x86.go#L193: X86.HasAVX512VBMI2 = isSet(ecx7, cpuid_AVX512_VBMI2)
cpu_x86.go#L194: X86.HasGFNI = isSet(ecx7, cpuid_GFNI)
cpu_x86.go#L195: X86.HasAVX512BITALG = isSet(ecx7, cpuid_AVX512_BITALG)
cpu_x86.go#L198: X86.HasFSRM = isSet(edx7, cpuid_FSRM)
cpu_x86.go#L209: X86.HasRDTSCP = isSet(edxExt1, cpuid_RDTSCP)
cpu_x86.go#L219: X86.HasAVX512 = X86.HasAVX512F && X86.HasAVX512CD && X86.HasAVX512BW && X86.HasAVX512DQ && X86.HasAVX512VL
cpu_x86.go#L224: if X86.HasAVX {
cpu_x86.go#L225: X86.HasAVXVNNI = isSet(eax71, cpuid_AVXVNNI)
internal/bytealg
bytealg.go#L23: offsetX86HasSSE42 = unsafe.Offsetof(cpu.X86.HasSSE42)
bytealg.go#L24: offsetX86HasAVX2 = unsafe.Offsetof(cpu.X86.HasAVX2)
bytealg.go#L25: offsetX86HasPOPCNT = unsafe.Offsetof(cpu.X86.HasPOPCNT)
index_amd64.go#L12: if cpu.X86.HasAVX2 {
internal/runtime/gc/scan
scan_amd64.go#L37: var avx512ScanPackedReqsMet = cpu.X86.HasAVX512VL &&
scan_amd64.go#L38: cpu.X86.HasAVX512BW &&
scan_amd64.go#L39: cpu.X86.HasGFNI &&
scan_amd64.go#L40: cpu.X86.HasAVX512BITALG &&
scan_amd64.go#L41: cpu.X86.HasAVX512VBMI
crypto/internal/fips140deps/cpu
cpu.go#L40: X86HasAES = cpu.X86.HasAES
cpu.go#L41: X86HasADX = cpu.X86.HasADX
cpu.go#L42: X86HasAVX = cpu.X86.HasAVX
cpu.go#L43: X86HasAVX2 = cpu.X86.HasAVX2
cpu.go#L44: X86HasBMI2 = cpu.X86.HasBMI2
cpu.go#L45: X86HasPCLMULQDQ = cpu.X86.HasPCLMULQDQ
cpu.go#L46: X86HasSHA = cpu.X86.HasSHA
cpu.go#L47: X86HasSSE41 = cpu.X86.HasSSE41
cpu.go#L48: X86HasSSSE3 = cpu.X86.HasSSSE3
crypto/sha1
sha1block_amd64.go#L20: var useAVX2 = cpu.X86.HasAVX && cpu.X86.HasAVX2 && cpu.X86.HasBMI1 && cpu.X86.HasBMI2
sha1block_amd64.go#L21: var useSHANI = cpu.X86.HasAVX && cpu.X86.HasSHA && cpu.X86.HasSSE41 && cpu.X86.HasSSSE3
crypto/tls
cipher_suites.go#L371: hasGCMAsmAMD64 = cpu.X86.HasAES && cpu.X86.HasPCLMULQDQ && cpu.X86.HasSSE41 && cpu.X86.HasSSSE3
hash/crc32
crc32_amd64.go#L18: offsetX86HasAVX512VPCLMULQDQL = unsafe.Offsetof(cpu.X86.HasAVX512VPCLMULQDQ)
crc32_amd64.go#L55: return cpu.X86.HasSSE42
crc32_amd64.go#L59: if !cpu.X86.HasSSE42 {
crc32_amd64.go#L91: if !cpu.X86.HasSSE42 {
crc32_amd64.go#L202: return cpu.X86.HasPCLMULQDQ && cpu.X86.HasSSE41
crc32_amd64.go#L208: if !cpu.X86.HasPCLMULQDQ || !cpu.X86.HasSSE41 {
crc32_amd64.go#L216: if !cpu.X86.HasPCLMULQDQ || !cpu.X86.HasSSE41 {
math
exp_amd64.go#L11: var useFMA = cpu.X86.HasAVX && cpu.X86.HasFMA
math/big
arith_amd64.go#L11: var hasADX = cpu.X86.HasADX && cpu.X86.HasBMI2
runtime
alg.go#L395: cpu.X86.HasAES && // AESENC
alg.go#L396: cpu.X86.HasSSSE3 && // PSHUFB
alg.go#L397: cpu.X86.HasSSE41 { // PINSR{D,Q}
cpuflags.go#L14: offsetX86HasAVX = unsafe.Offsetof(cpu.X86.HasAVX)
cpuflags.go#L15: offsetX86HasAVX2 = unsafe.Offsetof(cpu.X86.HasAVX2)
cpuflags.go#L16: offsetX86HasAVX512 = unsafe.Offsetof(cpu.X86.HasAVX512) // F+CD+BW+DQ+VL
cpuflags.go#L17: offsetX86HasERMS = unsafe.Offsetof(cpu.X86.HasERMS)
cpuflags.go#L18: offsetX86HasRDTSCP = unsafe.Offsetof(cpu.X86.HasRDTSCP)
cpuflags_amd64.go#L31: useREPMOV := isERMSNiceCPU && cpu.X86.HasERMS && cpu.X86.HasFSRM
cpuflags_amd64.go#L32: if cpu.X86.HasAVX {
proc.go#L767: x86HasAVX = cpu.X86.HasAVX
proc.go#L768: x86HasFMA = cpu.X86.HasFMA
proc.go#L769: x86HasPOPCNT = cpu.X86.HasPOPCNT
proc.go#L770: x86HasSSE41 = cpu.X86.HasSSE41
 |
The pages are generated with Golds v0.8.4. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |