diff --git a/src/ImageSharp/Common/Helpers/SimdUtils.ExtendedIntrinsics.cs b/src/ImageSharp/Common/Helpers/SimdUtils.ExtendedIntrinsics.cs index 43998d0ec9..b9505ba3ef 100644 --- a/src/ImageSharp/Common/Helpers/SimdUtils.ExtendedIntrinsics.cs +++ b/src/ImageSharp/Common/Helpers/SimdUtils.ExtendedIntrinsics.cs @@ -97,7 +97,7 @@ internal static partial class SimdUtils { VerifySpanInput(source, dest, Vector.Count); - nuint n = (uint)(dest.Length / Vector.Count); + nuint n = (uint)dest.Length / (uint)Vector.Count; ref Vector sourceBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(source)); ref Vector destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dest)); @@ -132,7 +132,7 @@ internal static partial class SimdUtils { VerifySpanInput(source, dest, Vector.Count); - nuint n = (uint)(dest.Length / Vector.Count); + nuint n = (uint)dest.Length / (uint)Vector.Count; ref Vector sourceBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(source)); diff --git a/src/ImageSharp/Common/Helpers/SimdUtils.HwIntrinsics.cs b/src/ImageSharp/Common/Helpers/SimdUtils.HwIntrinsics.cs index 5f83ccd6be..ce6f335a8f 100644 --- a/src/ImageSharp/Common/Helpers/SimdUtils.HwIntrinsics.cs +++ b/src/ImageSharp/Common/Helpers/SimdUtils.HwIntrinsics.cs @@ -391,7 +391,7 @@ internal static partial class SimdUtils ref Vector128 destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dest)); - nuint n = (uint)(source.Length / Vector128.Count); + nuint n = (uint)source.Length / (uint)Vector128.Count; for (nuint i = 0; i < n; i += 3) { @@ -454,7 +454,7 @@ internal static partial class SimdUtils ref Vector128 destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dest)); - nuint n = (uint)(source.Length / Vector128.Count); + nuint n = (uint)source.Length / (uint)Vector128.Count; for (nuint i = 0, j = 0; i < n; i += 3, j += 4) { @@ -498,7 +498,7 @@ internal static partial class SimdUtils ref Vector128 destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dest)); - nuint n = (uint)(source.Length / Vector128.Count); + nuint n = (uint)source.Length / (uint)Vector128.Count; for (nuint i = 0, j = 0; i < n; i += 4, j += 3) { @@ -650,7 +650,7 @@ internal static partial class SimdUtils { VerifySpanInput(source, dest, Vector256.Count); - nuint n = (uint)(dest.Length / Vector256.Count); + nuint n = (uint)dest.Length / (uint)Vector256.Count; ref Vector256 destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dest)); @@ -683,7 +683,7 @@ internal static partial class SimdUtils // Sse VerifySpanInput(source, dest, Vector128.Count); - nuint n = (uint)(dest.Length / Vector128.Count); + nuint n = (uint)dest.Length / (uint)Vector128.Count; ref Vector128 destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dest)); @@ -782,7 +782,7 @@ internal static partial class SimdUtils { VerifySpanInput(source, dest, Vector256.Count); - nuint n = (uint)(dest.Length / Vector256.Count); + nuint n = (uint)dest.Length / (uint)Vector256.Count; ref Vector256 sourceBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(source)); @@ -821,7 +821,7 @@ internal static partial class SimdUtils // Sse VerifySpanInput(source, dest, Vector128.Count); - nuint n = (uint)(dest.Length / Vector128.Count); + nuint n = (uint)dest.Length / (uint)Vector128.Count; ref Vector128 sourceBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(source)); @@ -864,7 +864,7 @@ internal static partial class SimdUtils ref Vector256 bBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(blueChannel)); ref byte dBase = ref Unsafe.As(ref MemoryMarshal.GetReference(destination)); - nuint count = (uint)(redChannel.Length / Vector256.Count); + nuint count = (uint)redChannel.Length / (uint)Vector256.Count; ref byte control1Bytes = ref MemoryMarshal.GetReference(PermuteMaskEvenOdd8x32); Vector256 control1 = Unsafe.As>(ref control1Bytes); @@ -936,7 +936,7 @@ internal static partial class SimdUtils ref Vector256 bBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(blueChannel)); ref Vector256 dBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(destination)); - nuint count = (uint)(redChannel.Length / Vector256.Count); + nuint count = (uint)redChannel.Length / (uint)Vector256.Count; ref byte control1Bytes = ref MemoryMarshal.GetReference(PermuteMaskEvenOdd8x32); Vector256 control1 = Unsafe.As>(ref control1Bytes); var a = Vector256.Create((byte)255); diff --git a/src/ImageSharp/Formats/Jpeg/Components/Block8x8F.ScaledCopy.cs b/src/ImageSharp/Formats/Jpeg/Components/Block8x8F.ScaledCopy.cs index 652c064ad5..efc1dbd729 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/Block8x8F.ScaledCopy.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/Block8x8F.ScaledCopy.cs @@ -98,7 +98,7 @@ internal partial struct Block8x8F nuint xx = x * horizontalScale; float value = this[(int)(y8 + x)]; - nuint baseIdx = (uint)((yy * areaStride) + xx); + nuint baseIdx = (yy * areaStride) + xx; for (nuint i = 0; i < verticalScale; i++, baseIdx += areaStride) { diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykAvx.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykAvx.cs index 07ba3648c4..0283e83d0f 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykAvx.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykAvx.cs @@ -32,7 +32,7 @@ internal abstract partial class JpegColorConverterBase // Used for the color conversion var scale = Vector256.Create(1 / (this.MaximumValue * this.MaximumValue)); - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { ref Vector256 c = ref Unsafe.Add(ref c0Base, i); @@ -71,7 +71,7 @@ internal abstract partial class JpegColorConverterBase var scale = Vector256.Create(maxValue); - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { Vector256 ctmp = Avx.Subtract(scale, Unsafe.Add(ref srcR, i)); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykVector.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykVector.cs index 2e2ff08bf9..4cc8c0665f 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykVector.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykVector.cs @@ -30,7 +30,7 @@ internal abstract partial class JpegColorConverterBase var scale = new Vector(1 / (this.MaximumValue * this.MaximumValue)); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { ref Vector c = ref Unsafe.Add(ref cBase, i); @@ -78,7 +78,7 @@ internal abstract partial class JpegColorConverterBase // Used for the color conversion var scale = new Vector(maxValue); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { Vector ctmp = scale - Unsafe.Add(ref srcR, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleAvx.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleAvx.cs index 80ae6621c4..4efb6f8514 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleAvx.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleAvx.cs @@ -27,7 +27,7 @@ internal abstract partial class JpegColorConverterBase // Used for the color conversion var scale = Vector256.Create(1 / this.MaximumValue); - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { ref Vector256 c0 = ref Unsafe.Add(ref c0Base, i); @@ -53,7 +53,7 @@ internal abstract partial class JpegColorConverterBase var f0587 = Vector256.Create(0.587f); var f0114 = Vector256.Create(0.114f); - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { ref Vector256 r = ref Unsafe.Add(ref srcRed, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleVector.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleVector.cs index 018e0ca442..4156a5968b 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleVector.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleVector.cs @@ -24,7 +24,7 @@ internal abstract partial class JpegColorConverterBase var scale = new Vector(1 / this.MaximumValue); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { ref Vector c0 = ref Unsafe.Add(ref cBase, i); @@ -53,7 +53,7 @@ internal abstract partial class JpegColorConverterBase var gMult = new Vector(0.587f); var bMult = new Vector(0.114f); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { Vector r = Unsafe.Add(ref srcR, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbArm.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbArm.cs index 72d8340a0f..8889223064 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbArm.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbArm.cs @@ -30,7 +30,7 @@ internal abstract partial class JpegColorConverterBase // Used for the color conversion var scale = Vector128.Create(1 / this.MaximumValue); - nuint n = (uint)(values.Component0.Length / Vector128.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector128.Count; for (nuint i = 0; i < n; i++) { ref Vector128 r = ref Unsafe.Add(ref rBase, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbAvx.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbAvx.cs index 8c095309c7..ae9b943aaf 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbAvx.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbAvx.cs @@ -29,7 +29,7 @@ internal abstract partial class JpegColorConverterBase // Used for the color conversion var scale = Vector256.Create(1 / this.MaximumValue); - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { ref Vector256 r = ref Unsafe.Add(ref rBase, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbVector.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbVector.cs index cbba796440..5e3cf9b2b3 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbVector.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.RgbVector.cs @@ -28,7 +28,7 @@ internal abstract partial class JpegColorConverterBase var scale = new Vector(1 / this.MaximumValue); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { ref Vector r = ref Unsafe.Add(ref rBase, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrAvx.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrAvx.cs index e828ba1179..0a2cfd084c 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrAvx.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrAvx.cs @@ -38,7 +38,7 @@ internal abstract partial class JpegColorConverterBase var bCbMult = Vector256.Create(YCbCrScalar.BCbMult); // Walking 8 elements at one step: - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { // y = yVals[i]; @@ -98,7 +98,7 @@ internal abstract partial class JpegColorConverterBase var fn0081312F = Vector256.Create(-0.081312F); var f05 = Vector256.Create(0.5f); - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { Vector256 r = Unsafe.Add(ref srcR, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrVector.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrVector.cs index e3b4be235f..ca01aed612 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrVector.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrVector.cs @@ -35,7 +35,7 @@ internal abstract partial class JpegColorConverterBase var gCrMult = new Vector(-YCbCrScalar.GCrMult); var bCbMult = new Vector(YCbCrScalar.BCbMult); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { // y = yVals[i]; @@ -103,7 +103,7 @@ internal abstract partial class JpegColorConverterBase var gCrMult = new Vector(0.418688f); var bCrMult = new Vector(0.081312f); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { Vector r = Unsafe.Add(ref srcR, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKAvx.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKAvx.cs index 8ab2dd3d67..337741622a 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKAvx.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKAvx.cs @@ -40,7 +40,7 @@ internal abstract partial class JpegColorConverterBase var bCbMult = Vector256.Create(YCbCrScalar.BCbMult); // Walking 8 elements at one step: - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { // y = yVals[i]; @@ -109,7 +109,7 @@ internal abstract partial class JpegColorConverterBase var fn0081312F = Vector256.Create(-0.081312F); var f05 = Vector256.Create(0.5f); - nuint n = (uint)(values.Component0.Length / Vector256.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector256.Count; for (nuint i = 0; i < n; i++) { Vector256 r = Avx.Subtract(maxSampleValue, Unsafe.Add(ref srcR, i)); diff --git a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKVector.cs b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKVector.cs index 711b0fe3bb..d67fad3080 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKVector.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKVector.cs @@ -36,7 +36,7 @@ internal abstract partial class JpegColorConverterBase var gCrMult = new Vector(-YCbCrScalar.GCrMult); var bCbMult = new Vector(YCbCrScalar.BCbMult); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { // y = yVals[i]; @@ -107,7 +107,7 @@ internal abstract partial class JpegColorConverterBase var gCrMult = new Vector(0.418688f); var bCrMult = new Vector(0.081312f); - nuint n = (uint)(values.Component0.Length / Vector.Count); + nuint n = (uint)values.Component0.Length / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { Vector r = maxSampleValue - Unsafe.Add(ref srcR, i); diff --git a/src/ImageSharp/Formats/Jpeg/Components/Encoder/ComponentProcessor.cs b/src/ImageSharp/Formats/Jpeg/Components/Encoder/ComponentProcessor.cs index c7d9498b6b..4815baa62f 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/Encoder/ComponentProcessor.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/Encoder/ComponentProcessor.cs @@ -122,7 +122,7 @@ internal class ComponentProcessor : IDisposable ref Vector256 sourceVectorRef = ref Unsafe.As>(ref MemoryMarshal.GetReference(source)); // Spans are guaranteed to be multiple of 8 so no extra 'remainder' steps are needed - nuint count = (uint)(source.Length / Vector256.Count); + nuint count = (uint)source.Length / (uint)Vector256.Count; for (nuint i = 0; i < count; i++) { Unsafe.Add(ref targetVectorRef, i) = Avx.Add(Unsafe.Add(ref targetVectorRef, i), Unsafe.Add(ref sourceVectorRef, i)); @@ -133,7 +133,7 @@ internal class ComponentProcessor : IDisposable ref Vector targetVectorRef = ref Unsafe.As>(ref MemoryMarshal.GetReference(target)); ref Vector sourceVectorRef = ref Unsafe.As>(ref MemoryMarshal.GetReference(source)); - nuint count = (uint)(source.Length / Vector.Count); + nuint count = (uint)source.Length / (uint)Vector.Count; for (nuint i = 0; i < count; i++) { Unsafe.Add(ref targetVectorRef, i) += Unsafe.Add(ref sourceVectorRef, i); @@ -166,7 +166,7 @@ internal class ComponentProcessor : IDisposable source = source.Slice(touchedCount); target = target.Slice(touchedCount / factor); - nuint length = (uint)(touchedCount / Vector256.Count); + nuint length = (uint)touchedCount / (uint)Vector256.Count; for (uint i = 0; i < haddIterationsCount; i++) { @@ -200,7 +200,7 @@ internal class ComponentProcessor : IDisposable ref Vector256 targetVectorRef = ref Unsafe.As>(ref MemoryMarshal.GetReference(target)); // Spans are guaranteed to be multiple of 8 so no extra 'remainder' steps are needed - nuint count = (uint)(target.Length / Vector256.Count); + nuint count = (uint)target.Length / (uint)Vector256.Count; var multiplierVector = Vector256.Create(multiplier); for (nuint i = 0; i < count; i++) { @@ -211,7 +211,7 @@ internal class ComponentProcessor : IDisposable { ref Vector targetVectorRef = ref Unsafe.As>(ref MemoryMarshal.GetReference(target)); - nuint count = (uint)(target.Length / Vector.Count); + nuint count = (uint)target.Length / (uint)Vector.Count; var multiplierVector = new Vector(multiplier); for (nuint i = 0; i < count; i++) { diff --git a/tests/ImageSharp.Benchmarks/Bulk/FromVector4.cs b/tests/ImageSharp.Benchmarks/Bulk/FromVector4.cs index f0eeb5afb7..7e6cec2018 100644 --- a/tests/ImageSharp.Benchmarks/Bulk/FromVector4.cs +++ b/tests/ImageSharp.Benchmarks/Bulk/FromVector4.cs @@ -103,10 +103,9 @@ public class FromVector4Rgba32 : FromVector4 Span src = MemoryMarshal.Cast(this.source.GetSpan()); Span dest = MemoryMarshal.Cast(this.destination.GetSpan()); - nuint n = (uint)(dest.Length / Vector.Count); + nuint n = (uint)dest.Length / (uint)Vector.Count; - ref Vector256 sourceBase = - ref Unsafe.As>(ref MemoryMarshal.GetReference(src)); + ref Vector256 sourceBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(src)); ref Vector256 destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dest)); ref byte maskBase = ref MemoryMarshal.GetReference(PermuteMaskDeinterleave8x32); diff --git a/tests/ImageSharp.Benchmarks/Bulk/ToVector4_Rgba32.cs b/tests/ImageSharp.Benchmarks/Bulk/ToVector4_Rgba32.cs index ce3fb70c88..9abf0ed22a 100644 --- a/tests/ImageSharp.Benchmarks/Bulk/ToVector4_Rgba32.cs +++ b/tests/ImageSharp.Benchmarks/Bulk/ToVector4_Rgba32.cs @@ -54,7 +54,7 @@ public class ToVector4_Rgba32 : ToVector4 Span sBytes = MemoryMarshal.Cast(this.source.GetSpan()); Span dFloats = MemoryMarshal.Cast(this.destination.GetSpan()); - nuint n = (uint)(dFloats.Length / Vector.Count); + nuint n = (uint)dFloats.Length / (uint)Vector.Count; ref Vector sourceBase = ref Unsafe.As>(ref MemoryMarshal.GetReference((ReadOnlySpan)sBytes)); ref Vector destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dFloats)); @@ -96,7 +96,7 @@ public class ToVector4_Rgba32 : ToVector4 Span sBytes = MemoryMarshal.Cast(this.source.GetSpan()); Span dFloats = MemoryMarshal.Cast(this.destination.GetSpan()); - nuint n = (uint)(dFloats.Length / Vector.Count); + nuint n = (uint)dFloats.Length / (uint)Vector.Count; ref Vector sourceBase = ref Unsafe.As>(ref MemoryMarshal.GetReference((ReadOnlySpan)sBytes)); ref Vector destBase = ref Unsafe.As>(ref MemoryMarshal.GetReference(dFloats)); diff --git a/tests/ImageSharp.Benchmarks/General/PixelConversion/PixelConversion_PackFromRgbPlanes.cs b/tests/ImageSharp.Benchmarks/General/PixelConversion/PixelConversion_PackFromRgbPlanes.cs index e3677d238d..ddf192af87 100644 --- a/tests/ImageSharp.Benchmarks/General/PixelConversion/PixelConversion_PackFromRgbPlanes.cs +++ b/tests/ImageSharp.Benchmarks/General/PixelConversion/PixelConversion_PackFromRgbPlanes.cs @@ -205,7 +205,7 @@ public unsafe class PixelConversion_PackFromRgbPlanes ref Vector256 bBase = ref Unsafe.As>(ref this.bFloat[0]); ref Vector256 resultBase = ref Unsafe.As>(ref this.rgbaFloat[0]); - nuint count = (uint)(this.Count / Vector256.Count); + nuint count = (uint)this.Count / (uint)Vector256.Count; ref byte control = ref MemoryMarshal.GetReference(SimdUtils.HwIntrinsics.PermuteMaskEvenOdd8x32); Vector256 vcontrol = Unsafe.As>(ref control); diff --git a/tests/ImageSharp.Benchmarks/General/Vectorization/UInt32ToSingle.cs b/tests/ImageSharp.Benchmarks/General/Vectorization/UInt32ToSingle.cs index 010e1f52b3..fc4dc1fa16 100644 --- a/tests/ImageSharp.Benchmarks/General/Vectorization/UInt32ToSingle.cs +++ b/tests/ImageSharp.Benchmarks/General/Vectorization/UInt32ToSingle.cs @@ -12,7 +12,7 @@ public class UInt32ToSingle { private float[] data; - private const int Count = 32; + private const uint Count = 32; [GlobalSetup] public void Setup() @@ -25,7 +25,7 @@ public class UInt32ToSingle { ref Vector b = ref Unsafe.As>(ref this.data[0]); - nuint n = (uint)(Count / Vector.Count); + nuint n = Count / (uint)Vector.Count; var bVec = new Vector(256.0f / 255.0f); var magicFloat = new Vector(32768.0f); @@ -50,7 +50,7 @@ public class UInt32ToSingle [Benchmark] public void StandardSimd() { - nuint n = (uint)(Count / Vector.Count); + nuint n = Count / (uint)Vector.Count; ref Vector bf = ref Unsafe.As>(ref this.data[0]); ref Vector bu = ref Unsafe.As, Vector>(ref bf); @@ -69,7 +69,7 @@ public class UInt32ToSingle [Benchmark] public void StandardSimdFromInt() { - nuint n = (uint)(Count / Vector.Count); + nuint n = Count / (uint)Vector.Count; ref Vector bf = ref Unsafe.As>(ref this.data[0]); ref Vector bu = ref Unsafe.As, Vector>(ref bf); @@ -88,7 +88,7 @@ public class UInt32ToSingle [Benchmark] public void StandardSimdFromInt_RefCast() { - nuint n = (uint)(Count / Vector.Count); + nuint n = Count / (uint)Vector.Count; ref Vector bf = ref Unsafe.As>(ref this.data[0]); var scale = new Vector(1f / 255f); diff --git a/tests/ImageSharp.Benchmarks/General/Vectorization/VectorFetching.cs b/tests/ImageSharp.Benchmarks/General/Vectorization/VectorFetching.cs index 32027729b2..5d20f29d18 100644 --- a/tests/ImageSharp.Benchmarks/General/Vectorization/VectorFetching.cs +++ b/tests/ImageSharp.Benchmarks/General/Vectorization/VectorFetching.cs @@ -63,7 +63,7 @@ public class VectorFetching var v = new Vector(this.testValue); ref Vector start = ref Unsafe.As>(ref this.data[0]); - nuint n = (uint)(this.InputSize / Vector.Count); + nuint n = (uint)this.InputSize / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { @@ -82,7 +82,7 @@ public class VectorFetching var v = new Vector(this.testValue); ref Vector start = ref Unsafe.As>(ref this.data[0]); - nuint n = (uint)(this.InputSize / Vector.Count); + nuint n = (uint)this.InputSize / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { @@ -100,7 +100,7 @@ public class VectorFetching ref Vector start = ref Unsafe.As>(ref MemoryMarshal.GetReference(span)); - nuint n = (uint)(this.InputSize / Vector.Count); + nuint n = (uint)this.InputSize / (uint)Vector.Count; for (nuint i = 0; i < n; i++) { diff --git a/tests/ImageSharp.Benchmarks/General/Vectorization/WidenBytesToUInt32.cs b/tests/ImageSharp.Benchmarks/General/Vectorization/WidenBytesToUInt32.cs index 6ad7827eb1..f391e42012 100644 --- a/tests/ImageSharp.Benchmarks/General/Vectorization/WidenBytesToUInt32.cs +++ b/tests/ImageSharp.Benchmarks/General/Vectorization/WidenBytesToUInt32.cs @@ -42,7 +42,7 @@ public class WidenBytesToUInt32 [Benchmark] public void Simd() { - nuint n = (uint)(Count / Vector.Count); + nuint n = Count / (uint)Vector.Count; ref Vector sBase = ref Unsafe.As>(ref this.source[0]); ref Vector dBase = ref Unsafe.As>(ref this.dest[0]);