if (typeof(T) == typeof(double) && Vector256.IsHardwareAccelerated)
{
var _this = Vector256.Create(
Unsafe.As<T, double>(ref Unsafe.AsRef(X)),
Unsafe.As<T, double>(ref Unsafe.AsRef(Y)),
Unsafe.As<T, double>(ref Unsafe.AsRef(Z)),
0);
var _other = Vector256.Create(
Unsafe.As<T, double>(ref Unsafe.AsRef(other.X)),
Unsafe.As<T, double>(ref Unsafe.AsRef(other.Y)),
Unsafe.As<T, double>(ref Unsafe.AsRef(other.Z)),
0);
return _this.Equals(_other);
}
if (typeof(T) == typeof(double) && Vector256.IsHardwareAccelerated)
{
var _this = Vector256.Create(
Unsafe.As<T, double>(ref Unsafe.AsRef(X)),
Unsafe.As<T, double>(ref Unsafe.AsRef(Y)),
Unsafe.As<T, double>(ref Unsafe.AsRef(Z)),
0);
var _other = Vector256.Create(
Unsafe.As<T, double>(ref Unsafe.AsRef(other.X)),
Unsafe.As<T, double>(ref Unsafe.AsRef(other.Y)),
Unsafe.As<T, double>(ref Unsafe.AsRef(other.Z)),
0);
return _this.Equals(_other);
}