// Copyright 2026 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. //go:build goexperiment.simd && amd64 package simd import ( "internal/cpu" "simd/archsimd" ) const archHasHwClmul = true func archMaxVectorSize() (size, allFeatureSize int) { if archsimd.X86.AVX() { size = 128 allFeatureSize = 128 } if archsimd.X86.AVX2() { size = 256 if cpu.X86.HasVPCLMULQDQ { allFeatureSize = 256 } } if archsimd.X86.AVX512() { size = 512 if cpu.X86.HasAVX512VPCLMULQDQ { allFeatureSize = 512 } } return }