diff --git a/X10D/src/Core/IntrinsicExtensions.cs b/X10D/src/Core/IntrinsicExtensions.cs index 8c85172..03916ac 100644 --- a/X10D/src/Core/IntrinsicExtensions.cs +++ b/X10D/src/Core/IntrinsicExtensions.cs @@ -32,9 +32,6 @@ public static class IntrinsicExtensions [MethodImpl(MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization)] public static Vector64 CorrectBoolean(this Vector64 vector) { - // TODO: AdvSimd implementation. - // TODO: WasmSimd implementation. (?) - Vector64 output = IntrinsicUtility.GetUninitializedVector64(); for (var i = 0; i < Vector64.Count; i++) diff --git a/X10D/src/Core/IntrinsicUtility.cs b/X10D/src/Core/IntrinsicUtility.cs index 2ea68ba..3bf6974 100644 --- a/X10D/src/Core/IntrinsicUtility.cs +++ b/X10D/src/Core/IntrinsicUtility.cs @@ -150,9 +150,6 @@ public static class IntrinsicUtility return HorizontalOr_Sse(left, right); } - // TODO: AdvSimd implementation. - // TODO: WasmSimd implementation. (?) - return HorizontalOrInternal_Fallback(left, right); } diff --git a/X10D/src/Core/SpanExtensions.cs b/X10D/src/Core/SpanExtensions.cs index 1ea3aaa..d46ae5f 100644 --- a/X10D/src/Core/SpanExtensions.cs +++ b/X10D/src/Core/SpanExtensions.cs @@ -79,14 +79,6 @@ public static class SpanExtensions public static bool Contains(this ReadOnlySpan span, T value) where T : struct, Enum { #if NET6_0_OR_GREATER - // Use MemoryMarshal.CreateSpan instead of using creating new Span instance from pointer will trim down a lot of - // instructions on Release mode. - - // Also use reference instead of MemoryMarshal.Cast to remove boundary check (or something, it just result in something - // like that). - - // TODO: Figure out some kind of way to directly pass the Span directly into Contains call, which make method smaller and - // more prone to inlining... unsafe { #pragma warning disable CS8500 @@ -481,7 +473,6 @@ public static class SpanExtensions { fixed (bool* pSource = source) { - // TODO Hasn't been tested since March 6th 2023 (Reason: Unavailable hardware). Vector128 vector1 = AdvSimd.LoadVector128((byte*)pSource).CorrectBoolean().AsUInt64(); Vector128 vector2 = AdvSimd.LoadVector128((byte*)(pSource + 16)).CorrectBoolean().AsUInt64(); @@ -566,7 +557,6 @@ public static class SpanExtensions { fixed (bool* pSource = source) { - // TODO Hasn't been tested since March 6th 2023 (Reason: Unavailable hardware). Vector64 load = AdvSimd.LoadVector64((byte*)pSource); return unchecked((byte)(IntegerPackingMagic * load.CorrectBoolean().AsUInt64().GetElement(0) >> 56)); }