// Copyright 2016 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 !amd64 || appengine || !gc || noasm
// +build !amd64 appengine !gc noasm

package vector

const haveAccumulateSIMD = false

func fixedAccumulateOpOverSIMD(dst []uint8, src []uint32)     {}
func fixedAccumulateOpSrcSIMD(dst []uint8, src []uint32)      {}
func fixedAccumulateMaskSIMD(buf []uint32)                    {}
func floatingAccumulateOpOverSIMD(dst []uint8, src []float32) {}
func floatingAccumulateOpSrcSIMD(dst []uint8, src []float32)  {}
func floatingAccumulateMaskSIMD(dst []uint32, src []float32)  {}
