code: func (impl *Standard) Sdot(n int, x []float32, incX int, y []float32, incY int) (retVal float32) {
  	// declared at cublasgen.h:186:17 enum CUBLAS_STATUS { ... } cublasSdot ...
  	if impl.e != nil {
  		return
  	}
  
  	if n < 0 {
  		panic("blas: n < 0")
  	}
  	if incX == 0 {
  		panic("blas: zero x index increment")
  	}
  	if incY == 0 {
  		panic("blas: zero y index increment")
  	}
  	if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) {
  		panic("blas: x index out of range")
  	}
  	if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) {
  		panic("blas: y index out of range")
  	}
  	if n == 0 {
  		return
  	}
  	impl.e = status(C.cublasSdot(C.cublasHandle_t(impl.h), C.int(n), (*C.float)(&x[0]), C.int(incX), (*C.float)(&y[0]), C.int(incY), (*C.float)(&retVal)))
  	return retVal
  }
docs: // Sdot computes the dot product of the two vectors
  //  \sum_i x[i]*y[i]