935 references to Count
System.Linq (5)
System\Linq\MaxMin.cs (5)
75else if (!Vector512.IsHardwareAccelerated || !Vector512<T>.IsSupported || span.Length < Vector512<T>.Count) 102ref T lastVectorStart = ref Unsafe.Add(ref current, span.Length - Vector512<T>.Count); 105current = ref Unsafe.Add(ref current, Vector512<T>.Count); 110current = ref Unsafe.Add(ref current, Vector512<T>.Count); 115for (int i = 1; i < Vector512<T>.Count; i++)
System.Numerics.Tensors (674)
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IAggregationOperator.cs (63)
76if (remainder >= (uint)Vector512<T>.Count) 520Vector512<T> end = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count)); 524if (remainder > (uint)(Vector512<T>.Count * 8)) 564misalignment = (uint)Vector512<T>.Count; 576while (remainder >= (uint)(Vector512<T>.Count * 8)) 580vector1 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0))); 581vector2 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1))); 582vector3 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2))); 583vector4 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3))); 592vector1 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4))); 593vector2 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5))); 594vector3 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6))); 595vector4 = transform.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7))); 605xPtr += (uint)(Vector512<T>.Count * 8); 607remainder -= (uint)(Vector512<T>.Count * 8); 628(nuint blocks, nuint trailing) = Math.DivRem(remainder, (nuint)Vector512<T>.Count); 636Vector512<T> vector = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7))); 643Vector512<T> vector = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6))); 650Vector512<T> vector = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5))); 657Vector512<T> vector = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4))); 664Vector512<T> vector = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3))); 671Vector512<T> vector = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2))); 678Vector512<T> vector = transform.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 1))); 1195if (remainder >= (uint)Vector512<T>.Count) 1692Vector512<T> end = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count), 1693Vector512.LoadUnsafe(ref yRef, remainder - (uint)Vector512<T>.Count)); 1697if (remainder > (uint)(Vector512<T>.Count * 8)) 1740misalignment = (uint)Vector512<T>.Count; 1755while (remainder >= (uint)(Vector512<T>.Count * 8)) 1759vector1 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 1760Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 0))); 1761vector2 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 1762Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 1))); 1763vector3 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 1764Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 2))); 1765vector4 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 1766Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 3))); 1775vector1 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 1776Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 4))); 1777vector2 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 1778Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 5))); 1779vector3 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 1780Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 6))); 1781vector4 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 1782Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 7))); 1792xPtr += (uint)(Vector512<T>.Count * 8); 1793yPtr += (uint)(Vector512<T>.Count * 8); 1795remainder -= (uint)(Vector512<T>.Count * 8); 1817(nuint blocks, nuint trailing) = Math.DivRem(remainder, (nuint)Vector512<T>.Count); 1825Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7)), 1826Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 7))); 1833Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6)), 1834Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 6))); 1841Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5)), 1842Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 5))); 1849Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4)), 1850Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 4))); 1857Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3)), 1858Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 3))); 1865Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2)), 1866Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 2))); 1873Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 1)), 1874Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 1)));
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IBinaryOperator.cs (148)
87if (remainder >= (uint)Vector512<T>.Count) 646Vector512<T> end = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count), 647Vector512.LoadUnsafe(ref yRef, remainder - (uint)Vector512<T>.Count)); 649if (remainder > (uint)(Vector512<T>.Count * 8)) 697while (remainder >= (uint)(Vector512<T>.Count * 8)) 701vector1 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 702Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 0))); 703vector2 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 704Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 1))); 705vector3 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 706Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 2))); 707vector4 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 708Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 3))); 710vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 0)); 711vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 1)); 712vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 2)); 713vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 3)); 717vector1 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 718Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 4))); 719vector2 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 720Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 5))); 721vector3 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 722Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 6))); 723vector4 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 724Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 7))); 726vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 4)); 727vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 5)); 728vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 6)); 729vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 7)); 734xPtr += (uint)(Vector512<T>.Count * 8); 735yPtr += (uint)(Vector512<T>.Count * 8); 736dPtr += (uint)(Vector512<T>.Count * 8); 738remainder -= (uint)(Vector512<T>.Count * 8); 743while (remainder >= (uint)(Vector512<T>.Count * 8)) 747vector1 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 748Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 0))); 749vector2 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 750Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 1))); 751vector3 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 752Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 2))); 753vector4 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 754Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 3))); 756vector1.Store(dPtr + (uint)(Vector512<T>.Count * 0)); 757vector2.Store(dPtr + (uint)(Vector512<T>.Count * 1)); 758vector3.Store(dPtr + (uint)(Vector512<T>.Count * 2)); 759vector4.Store(dPtr + (uint)(Vector512<T>.Count * 3)); 763vector1 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 764Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 4))); 765vector2 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 766Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 5))); 767vector3 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 768Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 6))); 769vector4 = TBinaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 770Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 7))); 772vector1.Store(dPtr + (uint)(Vector512<T>.Count * 4)); 773vector2.Store(dPtr + (uint)(Vector512<T>.Count * 5)); 774vector3.Store(dPtr + (uint)(Vector512<T>.Count * 6)); 775vector4.Store(dPtr + (uint)(Vector512<T>.Count * 7)); 780xPtr += (uint)(Vector512<T>.Count * 8); 781yPtr += (uint)(Vector512<T>.Count * 8); 782dPtr += (uint)(Vector512<T>.Count * 8); 784remainder -= (uint)(Vector512<T>.Count * 8); 804remainder = (remainder + (uint)(Vector512<T>.Count - 1)) & (nuint)(-Vector512<T>.Count); 806switch (remainder / (uint)Vector512<T>.Count) 810Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 8)), 811Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 8))); 812vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 8)); 818Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7)), 819Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 7))); 820vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 7)); 826Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6)), 827Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 6))); 828vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 6)); 834Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5)), 835Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 5))); 836vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 5)); 842Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4)), 843Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 4))); 844vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 4)); 850Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3)), 851Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 3))); 852vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 3)); 858Vector512<T> vector = TBinaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2)), 859Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 2))); 860vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 2)); 867end.StoreUnsafe(ref dRef, endIndex - (uint)Vector512<T>.Count); 1419if (remainder >= (uint)Vector512<T>.Count) 1972Vector512<T> end = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count)), 1975if (remainder > (uint)(Vector512<T>.Count * 8)) 2020while (remainder >= (uint)(Vector512<T>.Count * 8)) 2024vector1 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0))), 2026vector2 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1))), 2028vector3 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2))), 2030vector4 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3))), 2033vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 0)); 2034vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 1)); 2035vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 2)); 2036vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 3)); 2040vector1 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4))), 2042vector2 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5))), 2044vector3 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6))), 2046vector4 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7))), 2049vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 4)); 2050vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 5)); 2051vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 6)); 2052vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 7)); 2057xPtr += (uint)(Vector512<T>.Count * 8); 2058dPtr += (uint)(Vector512<T>.Count * 8); 2060remainder -= (uint)(Vector512<T>.Count * 8); 2065while (remainder >= (uint)(Vector512<T>.Count * 8)) 2069vector1 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0))), 2071vector2 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1))), 2073vector3 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2))), 2075vector4 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3))), 2078vector1.Store(dPtr + (uint)(Vector512<T>.Count * 0)); 2079vector2.Store(dPtr + (uint)(Vector512<T>.Count * 1)); 2080vector3.Store(dPtr + (uint)(Vector512<T>.Count * 2)); 2081vector4.Store(dPtr + (uint)(Vector512<T>.Count * 3)); 2085vector1 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4))), 2087vector2 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5))), 2089vector3 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6))), 2091vector4 = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7))), 2094vector1.Store(dPtr + (uint)(Vector512<T>.Count * 4)); 2095vector2.Store(dPtr + (uint)(Vector512<T>.Count * 5)); 2096vector3.Store(dPtr + (uint)(Vector512<T>.Count * 6)); 2097vector4.Store(dPtr + (uint)(Vector512<T>.Count * 7)); 2102xPtr += (uint)(Vector512<T>.Count * 8); 2103dPtr += (uint)(Vector512<T>.Count * 8); 2105remainder -= (uint)(Vector512<T>.Count * 8); 2124remainder = (remainder + (uint)(Vector512<T>.Count - 1)) & (nuint)(-Vector512<T>.Count); 2126switch (remainder / (uint)Vector512<T>.Count) 2130Vector512<T> vector = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 8))), 2132vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 8)); 2138Vector512<T> vector = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7))), 2140vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 7)); 2146Vector512<T> vector = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6))), 2148vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 6)); 2154Vector512<T> vector = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5))), 2156vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 5)); 2162Vector512<T> vector = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4))), 2164vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 4)); 2170Vector512<T> vector = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3))), 2172vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 3)); 2178Vector512<T> vector = TBinaryOperator.Invoke(TTransformOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2))), 2180vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 2)); 2187end.StoreUnsafe(ref dRef, endIndex - (uint)Vector512<T>.Count);
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IBooleanUnaryOperator.cs (26)
103oneVectorFromEnd = x.Length - Vector512<T>.Count; 114i += Vector512<T>.Count; 120TAnyAll.ShouldEarlyExit(TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(x.Length - Vector512<T>.Count))))) 237int vectorFromEnd = x.Length - Vector512<T>.Count; 244i += Vector512<T>.Count; 251i = x.Length - Vector512<T>.Count; 345int vectorsFromEnd = x.Length - (Vector512<T>.Count * sizeof(T)); 352i += Vector512<T>.Count * sizeof(T); 359i = x.Length - (Vector512<T>.Count * sizeof(T)); 370TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + Vector512<T>.Count))).AsUInt16()); 462int vectorsFromEnd = x.Length - (Vector512<T>.Count * sizeof(T)); 469i += Vector512<T>.Count * sizeof(T); 476i = x.Length - (Vector512<T>.Count * sizeof(T)); 488TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + Vector512<T>.Count))).AsUInt32()), 490TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (2 * Vector512<T>.Count)))).AsUInt32(), 491TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (3 * Vector512<T>.Count)))).AsUInt32())); 591int vectorsFromEnd = x.Length - (Vector512<T>.Count * sizeof(T)); 598i += Vector512<T>.Count * sizeof(T); 605i = x.Length - (Vector512<T>.Count * sizeof(T)); 618TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + Vector512<T>.Count))).AsUInt64()), 620TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (2 * Vector512<T>.Count)))).AsUInt64(), 621TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (3 * Vector512<T>.Count)))).AsUInt64())), 624TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (4 * Vector512<T>.Count)))).AsUInt64(), 625TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (5 * Vector512<T>.Count)))).AsUInt64()), 627TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (6 * Vector512<T>.Count)))).AsUInt64(), 628TOperator.Invoke(Vector512.LoadUnsafe(ref xRef, (uint)(i + (7 * Vector512<T>.Count)))).AsUInt64())));
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IStatefulUnaryOperator.cs (61)
53if (remainder >= (uint)Vector512<T>.Count) 548Vector512<T> end = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count)); 550if (remainder > (uint)(Vector512<T>.Count * 8)) 595while (remainder >= (uint)(Vector512<T>.Count * 8)) 599vector1 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0))); 600vector2 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1))); 601vector3 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2))); 602vector4 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3))); 604vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 0)); 605vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 1)); 606vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 2)); 607vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 3)); 611vector1 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4))); 612vector2 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5))); 613vector3 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6))); 614vector4 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7))); 616vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 4)); 617vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 5)); 618vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 6)); 619vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 7)); 624xPtr += (uint)(Vector512<T>.Count * 8); 625dPtr += (uint)(Vector512<T>.Count * 8); 627remainder -= (uint)(Vector512<T>.Count * 8); 632while (remainder >= (uint)(Vector512<T>.Count * 8)) 636vector1 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0))); 637vector2 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1))); 638vector3 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2))); 639vector4 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3))); 641vector1.Store(dPtr + (uint)(Vector512<T>.Count * 0)); 642vector2.Store(dPtr + (uint)(Vector512<T>.Count * 1)); 643vector3.Store(dPtr + (uint)(Vector512<T>.Count * 2)); 644vector4.Store(dPtr + (uint)(Vector512<T>.Count * 3)); 648vector1 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4))); 649vector2 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5))); 650vector3 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6))); 651vector4 = op.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7))); 653vector1.Store(dPtr + (uint)(Vector512<T>.Count * 4)); 654vector2.Store(dPtr + (uint)(Vector512<T>.Count * 5)); 655vector3.Store(dPtr + (uint)(Vector512<T>.Count * 6)); 656vector4.Store(dPtr + (uint)(Vector512<T>.Count * 7)); 661xPtr += (uint)(Vector512<T>.Count * 8); 662dPtr += (uint)(Vector512<T>.Count * 8); 664remainder -= (uint)(Vector512<T>.Count * 8); 683remainder = (remainder + (uint)(Vector512<T>.Count - 1)) & (nuint)(-Vector512<T>.Count); 685switch (remainder / (uint)Vector512<T>.Count) 689Vector512<T> vector = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 8))); 690vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 8)); 696Vector512<T> vector = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7))); 697vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 7)); 703Vector512<T> vector = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6))); 704vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 6)); 710Vector512<T> vector = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5))); 711vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 5)); 717Vector512<T> vector = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4))); 718vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 4)); 724Vector512<T> vector = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3))); 725vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 3)); 731Vector512<T> vector = op.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2))); 732vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 2)); 739end.StoreUnsafe(ref dRef, endIndex - (uint)Vector512<T>.Count);
System\Numerics\Tensors\netcore\Common\TensorPrimitives.ITernaryOperator.cs (261)
74if (remainder >= (uint)Vector512<T>.Count) 697Vector512<T> end = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count), 698Vector512.LoadUnsafe(ref yRef, remainder - (uint)Vector512<T>.Count), 699Vector512.LoadUnsafe(ref zRef, remainder - (uint)Vector512<T>.Count)); 701if (remainder > (uint)(Vector512<T>.Count * 8)) 752while (remainder >= (uint)(Vector512<T>.Count * 8)) 756vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 757Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 0)), 758Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 0))); 759vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 760Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 1)), 761Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 1))); 762vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 763Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 2)), 764Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 2))); 765vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 766Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 3)), 767Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 3))); 769vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 0)); 770vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 1)); 771vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 2)); 772vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 3)); 776vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 777Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 4)), 778Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 4))); 779vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 780Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 5)), 781Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 5))); 782vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 783Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 6)), 784Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 6))); 785vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 786Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 7)), 787Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 7))); 789vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 4)); 790vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 5)); 791vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 6)); 792vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 7)); 797xPtr += (uint)(Vector512<T>.Count * 8); 798yPtr += (uint)(Vector512<T>.Count * 8); 799zPtr += (uint)(Vector512<T>.Count * 8); 800dPtr += (uint)(Vector512<T>.Count * 8); 802remainder -= (uint)(Vector512<T>.Count * 8); 807while (remainder >= (uint)(Vector512<T>.Count * 8)) 811vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 812Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 0)), 813Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 0))); 814vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 815Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 1)), 816Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 1))); 817vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 818Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 2)), 819Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 2))); 820vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 821Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 3)), 822Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 3))); 824vector1.Store(dPtr + (uint)(Vector512<T>.Count * 0)); 825vector2.Store(dPtr + (uint)(Vector512<T>.Count * 1)); 826vector3.Store(dPtr + (uint)(Vector512<T>.Count * 2)); 827vector4.Store(dPtr + (uint)(Vector512<T>.Count * 3)); 831vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 832Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 4)), 833Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 4))); 834vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 835Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 5)), 836Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 5))); 837vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 838Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 6)), 839Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 6))); 840vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 841Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 7)), 842Vector512.Load(zPtr + (uint)(Vector512<T>.Count * 7))); 844vector1.Store(dPtr + (uint)(Vector512<T>.Count * 4)); 845vector2.Store(dPtr + (uint)(Vector512<T>.Count * 5)); 846vector3.Store(dPtr + (uint)(Vector512<T>.Count * 6)); 847vector4.Store(dPtr + (uint)(Vector512<T>.Count * 7)); 852xPtr += (uint)(Vector512<T>.Count * 8); 853yPtr += (uint)(Vector512<T>.Count * 8); 854zPtr += (uint)(Vector512<T>.Count * 8); 855dPtr += (uint)(Vector512<T>.Count * 8); 857remainder -= (uint)(Vector512<T>.Count * 8); 878remainder = (remainder + (uint)(Vector512<T>.Count - 1)) & (nuint)(-Vector512<T>.Count); 880switch (remainder / (uint)Vector512<T>.Count) 884Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 8)), 885Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 8)), 886Vector512.LoadUnsafe(ref zRef, remainder - (uint)(Vector512<T>.Count * 8))); 887vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 8)); 893Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7)), 894Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 7)), 895Vector512.LoadUnsafe(ref zRef, remainder - (uint)(Vector512<T>.Count * 7))); 896vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 7)); 902Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6)), 903Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 6)), 904Vector512.LoadUnsafe(ref zRef, remainder - (uint)(Vector512<T>.Count * 6))); 905vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 6)); 911Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5)), 912Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 5)), 913Vector512.LoadUnsafe(ref zRef, remainder - (uint)(Vector512<T>.Count * 5))); 914vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 5)); 920Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4)), 921Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 4)), 922Vector512.LoadUnsafe(ref zRef, remainder - (uint)(Vector512<T>.Count * 4))); 923vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 4)); 929Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3)), 930Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 3)), 931Vector512.LoadUnsafe(ref zRef, remainder - (uint)(Vector512<T>.Count * 3))); 932vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 3)); 938Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2)), 939Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 2)), 940Vector512.LoadUnsafe(ref zRef, remainder - (uint)(Vector512<T>.Count * 2))); 941vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 2)); 948end.StoreUnsafe(ref dRef, endIndex - (uint)Vector512<T>.Count); 1549if (remainder >= (uint)Vector512<T>.Count) 2166Vector512<T> end = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count), 2167Vector512.LoadUnsafe(ref yRef, remainder - (uint)Vector512<T>.Count), 2170if (remainder > (uint)(Vector512<T>.Count * 8)) 2218while (remainder >= (uint)(Vector512<T>.Count * 8)) 2222vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 2223Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 0)), 2225vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 2226Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 1)), 2228vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 2229Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 2)), 2231vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 2232Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 3)), 2235vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 0)); 2236vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 1)); 2237vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 2)); 2238vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 3)); 2242vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 2243Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 4)), 2245vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 2246Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 5)), 2248vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 2249Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 6)), 2251vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 2252Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 7)), 2255vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 4)); 2256vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 5)); 2257vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 6)); 2258vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 7)); 2263xPtr += (uint)(Vector512<T>.Count * 8); 2264yPtr += (uint)(Vector512<T>.Count * 8); 2265dPtr += (uint)(Vector512<T>.Count * 8); 2267remainder -= (uint)(Vector512<T>.Count * 8); 2272while (remainder >= (uint)(Vector512<T>.Count * 8)) 2276vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 2277Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 0)), 2279vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 2280Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 1)), 2282vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 2283Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 2)), 2285vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 2286Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 3)), 2289vector1.Store(dPtr + (uint)(Vector512<T>.Count * 0)); 2290vector2.Store(dPtr + (uint)(Vector512<T>.Count * 1)); 2291vector3.Store(dPtr + (uint)(Vector512<T>.Count * 2)); 2292vector4.Store(dPtr + (uint)(Vector512<T>.Count * 3)); 2296vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 2297Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 4)), 2299vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 2300Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 5)), 2302vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 2303Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 6)), 2305vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 2306Vector512.Load(yPtr + (uint)(Vector512<T>.Count * 7)), 2309vector1.Store(dPtr + (uint)(Vector512<T>.Count * 4)); 2310vector2.Store(dPtr + (uint)(Vector512<T>.Count * 5)); 2311vector3.Store(dPtr + (uint)(Vector512<T>.Count * 6)); 2312vector4.Store(dPtr + (uint)(Vector512<T>.Count * 7)); 2317xPtr += (uint)(Vector512<T>.Count * 8); 2318yPtr += (uint)(Vector512<T>.Count * 8); 2319dPtr += (uint)(Vector512<T>.Count * 8); 2321remainder -= (uint)(Vector512<T>.Count * 8); 2341remainder = (remainder + (uint)(Vector512<T>.Count - 1)) & (nuint)(-Vector512<T>.Count); 2343switch (remainder / (uint)Vector512<T>.Count) 2347Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 8)), 2348Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 8)), 2350vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 8)); 2356Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7)), 2357Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 7)), 2359vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 7)); 2365Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6)), 2366Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 6)), 2368vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 6)); 2374Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5)), 2375Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 5)), 2377vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 5)); 2383Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4)), 2384Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 4)), 2386vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 4)); 2392Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3)), 2393Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 3)), 2395vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 3)); 2401Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2)), 2402Vector512.LoadUnsafe(ref yRef, remainder - (uint)(Vector512<T>.Count * 2)), 2404vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 2)); 2411end.StoreUnsafe(ref dRef, endIndex - (uint)Vector512<T>.Count); 3035if (remainder >= (uint)Vector512<T>.Count) 3643Vector512<T> end = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<T>.Count), 3647if (remainder > (uint)(Vector512<T>.Count * 8)) 3692while (remainder >= (uint)(Vector512<T>.Count * 8)) 3696vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 3699vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 3702vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 3705vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 3709vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 0)); 3710vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 1)); 3711vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 2)); 3712vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 3)); 3716vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 3719vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 3722vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 3725vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 3729vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 4)); 3730vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 5)); 3731vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 6)); 3732vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<T>.Count * 7)); 3737xPtr += (uint)(Vector512<T>.Count * 8); 3738dPtr += (uint)(Vector512<T>.Count * 8); 3740remainder -= (uint)(Vector512<T>.Count * 8); 3745while (remainder >= (uint)(Vector512<T>.Count * 8)) 3749vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 0)), 3752vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 1)), 3755vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 2)), 3758vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 3)), 3762vector1.Store(dPtr + (uint)(Vector512<T>.Count * 0)); 3763vector2.Store(dPtr + (uint)(Vector512<T>.Count * 1)); 3764vector3.Store(dPtr + (uint)(Vector512<T>.Count * 2)); 3765vector4.Store(dPtr + (uint)(Vector512<T>.Count * 3)); 3769vector1 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 4)), 3772vector2 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 5)), 3775vector3 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 6)), 3778vector4 = TTernaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<T>.Count * 7)), 3782vector1.Store(dPtr + (uint)(Vector512<T>.Count * 4)); 3783vector2.Store(dPtr + (uint)(Vector512<T>.Count * 5)); 3784vector3.Store(dPtr + (uint)(Vector512<T>.Count * 6)); 3785vector4.Store(dPtr + (uint)(Vector512<T>.Count * 7)); 3790xPtr += (uint)(Vector512<T>.Count * 8); 3791dPtr += (uint)(Vector512<T>.Count * 8); 3793remainder -= (uint)(Vector512<T>.Count * 8); 3812remainder = (remainder + (uint)(Vector512<T>.Count - 1)) & (nuint)(-Vector512<T>.Count); 3814switch (remainder / (uint)Vector512<T>.Count) 3818Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 8)), 3821vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 8)); 3827Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 7)), 3830vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 7)); 3836Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 6)), 3839vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 6)); 3845Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 5)), 3848vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 5)); 3854Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 4)), 3857vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 4)); 3863Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 3)), 3866vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 3)); 3872Vector512<T> vector = TTernaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<T>.Count * 2)), 3875vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<T>.Count * 2)); 3882end.StoreUnsafe(ref dRef, endIndex - (uint)Vector512<T>.Count);
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IUnaryInputBinaryOutput.cs (9)
73oneVectorFromEnd = x.Length - Vector512<T>.Count; 83i += Vector512<T>.Count; 90i = x.Length - Vector512<T>.Count; 208oneVectorFromEnd = x.Length - Vector512<T>.Count; 218i += Vector512<T>.Count; 227i = x.Length - Vector512<T>.Count; 389oneVectorFromEnd = x.Length - Vector512<T>.Count; 401i += Vector512<T>.Count; 410i = x.Length - Vector512<T>.Count;
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IUnaryOneToFourOperator.cs (9)
49oneVectorFromEnd = x.Length - Vector512<TInput>.Count; 57results.Item2.StoreUnsafe(ref destinationRef, (uint)(i + Vector512<TOutput>.Count)); 58results.Item3.StoreUnsafe(ref destinationRef, (uint)(i + (Vector512<TOutput>.Count * 2))); 59results.Item4.StoreUnsafe(ref destinationRef, (uint)(i + (Vector512<TOutput>.Count * 3))); 61i += Vector512<TInput>.Count; 68i = x.Length - Vector512<TInput>.Count; 72results.Item2.StoreUnsafe(ref destinationRef, (uint)(i + Vector512<TOutput>.Count)); 73results.Item3.StoreUnsafe(ref destinationRef, (uint)(i + (Vector512<TOutput>.Count * 2))); 74results.Item4.StoreUnsafe(ref destinationRef, (uint)(i + (Vector512<TOutput>.Count * 3)));
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IUnaryOneToTwoOperator.cs (5)
49oneVectorFromEnd = x.Length - Vector512<TInput>.Count; 57upper.StoreUnsafe(ref destinationRef, (uint)(i + Vector512<TOutput>.Count)); 59i += Vector512<TInput>.Count; 66i = x.Length - Vector512<TInput>.Count; 70upper.StoreUnsafe(ref destinationRef, (uint)(i + Vector512<TOutput>.Count));
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IUnaryOperator.cs (61)
93if (remainder >= (uint)Vector512<TInput>.Count) 588Vector512<TOutput> end = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)Vector512<TInput>.Count)); 590if (remainder > (uint)(Vector512<TInput>.Count * 8)) 635while (remainder >= (uint)(Vector512<TInput>.Count * 8)) 639vector1 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 0))); 640vector2 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 1))); 641vector3 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 2))); 642vector4 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 3))); 644vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 0)); 645vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 1)); 646vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 2)); 647vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 3)); 651vector1 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 4))); 652vector2 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 5))); 653vector3 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 6))); 654vector4 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 7))); 656vector1.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 4)); 657vector2.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 5)); 658vector3.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 6)); 659vector4.StoreAlignedNonTemporal(dPtr + (uint)(Vector512<TOutput>.Count * 7)); 664xPtr += (uint)(Vector512<TInput>.Count * 8); 665dPtr += (uint)(Vector512<TInput>.Count * 8); 667remainder -= (uint)(Vector512<TInput>.Count * 8); 672while (remainder >= (uint)(Vector512<TInput>.Count * 8)) 676vector1 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 0))); 677vector2 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 1))); 678vector3 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 2))); 679vector4 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 3))); 681vector1.Store(dPtr + (uint)(Vector512<TOutput>.Count * 0)); 682vector2.Store(dPtr + (uint)(Vector512<TOutput>.Count * 1)); 683vector3.Store(dPtr + (uint)(Vector512<TOutput>.Count * 2)); 684vector4.Store(dPtr + (uint)(Vector512<TOutput>.Count * 3)); 688vector1 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 4))); 689vector2 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 5))); 690vector3 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 6))); 691vector4 = TUnaryOperator.Invoke(Vector512.Load(xPtr + (uint)(Vector512<TInput>.Count * 7))); 693vector1.Store(dPtr + (uint)(Vector512<TOutput>.Count * 4)); 694vector2.Store(dPtr + (uint)(Vector512<TOutput>.Count * 5)); 695vector3.Store(dPtr + (uint)(Vector512<TOutput>.Count * 6)); 696vector4.Store(dPtr + (uint)(Vector512<TOutput>.Count * 7)); 701xPtr += (uint)(Vector512<TInput>.Count * 8); 702dPtr += (uint)(Vector512<TOutput>.Count * 8); 704remainder -= (uint)(Vector512<TInput>.Count * 8); 723remainder = (remainder + (uint)(Vector512<TInput>.Count - 1)) & (nuint)(-Vector512<TInput>.Count); 725switch (remainder / (uint)Vector512<TInput>.Count) 729Vector512<TOutput> vector = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<TInput>.Count * 8))); 730vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<TOutput>.Count * 8)); 736Vector512<TOutput> vector = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<TInput>.Count * 7))); 737vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<TOutput>.Count * 7)); 743Vector512<TOutput> vector = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<TInput>.Count * 6))); 744vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<TOutput>.Count * 6)); 750Vector512<TOutput> vector = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<TInput>.Count * 5))); 751vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<TOutput>.Count * 5)); 757Vector512<TOutput> vector = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<TInput>.Count * 4))); 758vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<TOutput>.Count * 4)); 764Vector512<TOutput> vector = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<TInput>.Count * 3))); 765vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<TOutput>.Count * 3)); 771Vector512<TOutput> vector = TUnaryOperator.Invoke(Vector512.LoadUnsafe(ref xRef, remainder - (uint)(Vector512<TInput>.Count * 2))); 772vector.StoreUnsafe(ref dRef, remainder - (uint)(Vector512<TOutput>.Count * 2)); 779end.StoreUnsafe(ref dRef, endIndex - (uint)Vector512<TOutput>.Count);
System\Numerics\Tensors\netcore\Common\TensorPrimitives.IUnaryTwoToOneOperator.cs (5)
49twoVectorsFromEnd = x.Length - (Vector512<TInput>.Count * 2); 57Vector512.LoadUnsafe(ref xRef, (uint)(i + Vector512<TInput>.Count))).StoreUnsafe(ref destinationRef, (uint)i); 59i += Vector512<TInput>.Count * 2; 66i = x.Length - (Vector512<TInput>.Count * 2); 70Vector512.LoadUnsafe(ref xRef, (uint)(i + Vector512<TInput>.Count))).StoreUnsafe(ref destinationRef, (uint)i);
System\Numerics\Tensors\netcore\TensorPrimitives.CosineSimilarity.cs (10)
61if (Vector512.IsHardwareAccelerated && Vector512<T>.IsSupported && x.Length >= Vector512<T>.Count) 71int oneVectorFromEnd = x.Length - Vector512<T>.Count; 80i += Vector512<T>.Count; 90Vector512.LoadUnsafe(ref xRef, (uint)(x.Length - Vector512<T>.Count)) & remainderMask, 91Vector512.LoadUnsafe(ref yRef, (uint)(x.Length - Vector512<T>.Count)) & remainderMask, 201if (Vector512.IsHardwareAccelerated && x.Length >= Vector512<short>.Count) 212int oneVectorFromEnd = x.Length - Vector512<short>.Count; 222i += Vector512<short>.Count; 232Vector512.LoadUnsafe(ref xRef, (uint)(x.Length - Vector512<short>.Count)) & remainderMask); 234Vector512.LoadUnsafe(ref yRef, (uint)(x.Length - Vector512<short>.Count)) & remainderMask);
System\Numerics\Tensors\netcore\TensorPrimitives.HammingDistance.cs (5)
79if (Vector512.IsHardwareAccelerated && Vector512<T>.IsSupported && x.Length >= Vector512<T>.Count) 84int oneVectorFromEnd = x.Length - Vector512<T>.Count; 93i += Vector512<T>.Count; 100Vector512<T> xVec = Vector512.LoadUnsafe(ref xRef, (uint)(x.Length - Vector512<T>.Count)); 101Vector512<T> yVec = Vector512.LoadUnsafe(ref yRef, (uint)(x.Length - Vector512<T>.Count));
System\Numerics\Tensors\netcore\TensorPrimitives.IndexOfMax.cs (6)
148if (Vector512.IsHardwareAccelerated && Vector512<T>.IsSupported && x.Length >= Vector512<T>.Count) 173Vector512<T> increment = CreateVector512T(Vector512<T>.Count); 190int oneVectorFromEnd = x.Length - Vector512<T>.Count; 191int i = Vector512<T>.Count; 211i += Vector512<T>.Count; 217current = Vector512.LoadUnsafe(ref xRef, (uint)(x.Length - Vector512<T>.Count));
System\Numerics\Tensors\netcore\TensorPrimitives.Max.cs (5)
409if (Vector512.IsHardwareAccelerated && Vector512<T>.IsSupported && x.Length >= Vector512<T>.Count) 429int oneVectorFromEnd = x.Length - Vector512<T>.Count; 430int i = Vector512<T>.Count; 449i += Vector512<T>.Count; 455current = Vector512.LoadUnsafe(ref xRef, (uint)(x.Length - Vector512<T>.Count));
System.Private.CoreLib (254)
src\libraries\System.Private.CoreLib\src\System\Buffers\Text\Base64Url\Base64UrlEncoder.cs (1)
387utf16HighVector.Store(dest + Vector512<ushort>.Count);
src\libraries\System.Private.CoreLib\src\System\Collections\BitArray.cs (5)
173for (; i <= (uint)values.Length - Vector512<byte>.Count; i += (uint)Vector512<byte>.Count) 740if (Avx512BW.IsSupported && (uint)_bitLength >= Vector512<byte>.Count) 751for (; (i + Vector512<byte>.Count) <= (uint)_bitLength; i += (uint)Vector512<byte>.Count)
src\libraries\System.Private.CoreLib\src\System\Globalization\Ordinal.cs (1)
166if (Vector512.IsHardwareAccelerated && length >= Vector512<ushort>.Count)
src\libraries\System.Private.CoreLib\src\System\Numerics\Vector.cs (8)
400if (Vector<double>.Count == Vector512<double>.Count) 423if (Vector<double>.Count == Vector512<double>.Count) 531if (Vector<float>.Count == Vector512<float>.Count) 698if (Vector<T>.Count == Vector512<T>.Count) 1355if (Vector<T>.Count == Vector512<T>.Count) 1601if (Vector<T>.Count == Vector512<T>.Count) 2652if (Vector<uint>.Count == Vector512<uint>.Count) 2678if (Vector<ulong>.Count == Vector512<ulong>.Count)
src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector512.cs (50)
290Debug.Assert(Vector512<T>.Count >= Vector<T>.Count); 307Debug.Assert(Vector512<T>.Count >= Vector<T>.Count); 595/// <exception cref="ArgumentException">The length of <paramref name="destination" /> is less than <see cref="Vector512{T}.Count" />.</exception> 602if (destination.Length < Vector512<T>.Count) 615/// <exception cref="ArgumentException">The length of <paramref name="destination" /> is less than <see cref="Vector512{T}.Count" />.</exception> 628if ((destination.Length - startIndex) < Vector512<T>.Count) 640/// <exception cref="ArgumentException">The length of <paramref name="destination" /> is less than <see cref="Vector512{T}.Count" />.</exception> 644if ((uint)destination.Length < (uint)Vector512<T>.Count) 812/// <returns>A new <see cref="Vector512{T}" /> with its elements set to the first <see cref="Vector512{T}.Count" /> elements from <paramref name="values" />.</returns> 813/// <exception cref="ArgumentOutOfRangeException">The length of <paramref name="values" /> is less than <see cref="Vector512{T}.Count" />.</exception> 820if (values.Length < Vector512<T>.Count) 833/// <exception cref="ArgumentOutOfRangeException">The length of <paramref name="values" />, starting from <paramref name="index" />, is less than <see cref="Vector512{T}.Count" />.</exception> 840if ((index < 0) || ((values.Length - index) < Vector512<T>.Count)) 851/// <returns>A new <see cref="Vector512{T}" /> with its elements set to the first <see cref="Vector512{T}.Count" /> elements from <paramref name="values" />.</returns> 852/// <exception cref="ArgumentOutOfRangeException">The length of <paramref name="values" /> is less than <see cref="Vector512{T}.Count" />.</exception> 857if (values.Length < Vector512<T>.Count) 1812if ((uint)(index) >= (uint)(Vector512<T>.Count)) 2743for (int i = 0; i < Vector512<TSource>.Count; i++) 2749for (int i = Vector512<TSource>.Count; i < Vector512<TResult>.Count; i++) 2751TResult value = TResult.CreateTruncating(upper.GetElementUnsafe(i - Vector512<TSource>.Count)); 2812for (int i = 0; i < Vector512<TSource>.Count; i++) 2818for (int i = Vector512<TSource>.Count; i < Vector512<TResult>.Count; i++) 2820TResult value = TResult.CreateSaturating(upper.GetElementUnsafe(i - Vector512<TSource>.Count)); 3291for (int index = 0; index < Vector512<byte>.Count; index++) 3296if (selectedIndex < Vector512<byte>.Count) 3316for (int index = 0; index < Vector512<sbyte>.Count; index++) 3321if (selectedIndex < Vector512<sbyte>.Count) 3381for (int index = 0; index < Vector512<short>.Count; index++) 3386if (selectedIndex < Vector512<short>.Count) 3406for (int index = 0; index < Vector512<ushort>.Count; index++) 3411if (selectedIndex < Vector512<ushort>.Count) 3469for (int index = 0; index < Vector512<int>.Count; index++) 3474if (selectedIndex < Vector512<int>.Count) 3494for (int index = 0; index < Vector512<uint>.Count; index++) 3499if (selectedIndex < Vector512<uint>.Count) 3518for (int index = 0; index < Vector512<float>.Count; index++) 3523if (selectedIndex < Vector512<float>.Count) 3600for (int index = 0; index < Vector512<long>.Count; index++) 3605if (selectedIndex < (uint)Vector512<long>.Count) 3625for (int index = 0; index < Vector512<ulong>.Count; index++) 3630if (selectedIndex < (uint)Vector512<ulong>.Count) 3649for (int index = 0; index < Vector512<double>.Count; index++) 3654if (selectedIndex < (uint)Vector512<double>.Count) 3970/// <returns><c>true</c> if <paramref name="vector" /> was successfully copied to <paramref name="destination" />; otherwise, <c>false</c> if the length of <paramref name="destination" /> is less than <see cref="Vector512{T}.Count" />.</returns> 3974if ((uint)destination.Length < (uint)Vector512<T>.Count) 4257if ((uint)(index) >= (uint)(Vector512<T>.Count)) 4313Debug.Assert((index >= 0) && (index < Vector512<T>.Count)); 4321Debug.Assert((index >= 0) && (index < Vector512<T>.Count));
src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector512_1.cs (4)
67for (int i = 0; i < Count; i++) 421for (int i = 0; i < Count; i++) 445for (int i = 1; i < Count; i++) 464static int ISimdVector<Vector512<T>, T>.ElementCount => Vector512<T>.Count;
src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector512DebugView_1.cs (12)
21var items = new byte[Vector512<byte>.Count]; 31var items = new double[Vector512<double>.Count]; 41var items = new short[Vector512<short>.Count]; 51var items = new int[Vector512<int>.Count]; 61var items = new long[Vector512<long>.Count]; 71var items = new nint[Vector512<nint>.Count]; 81var items = new nuint[Vector512<nuint>.Count]; 91var items = new sbyte[Vector512<sbyte>.Count]; 101var items = new float[Vector512<float>.Count]; 111var items = new ushort[Vector512<ushort>.Count]; 121var items = new uint[Vector512<uint>.Count]; 131var items = new ulong[Vector512<ulong>.Count];
src\libraries\System.Private.CoreLib\src\System\SearchValues\ProbabilisticMap.cs (8)
441Vector512<byte> result = ContainsMask64CharsAvx512(charMap512, ref cur, ref Unsafe.Add(ref cur, Vector512<ushort>.Count)); 471Vector512<byte> result = ContainsMask64CharsAvx512(charMap512, ref searchSpace, ref Unsafe.Subtract(ref searchSpaceEnd, Vector512<ushort>.Count)); 619Vector512<byte> result = ContainsMask64CharsAvx512(charMap512, ref cur, ref Unsafe.Add(ref cur, Vector512<ushort>.Count)); 648Vector512<byte> result = ContainsMask64CharsAvx512(charMap512, ref searchSpace, ref Unsafe.Subtract(ref cur, Vector512<ushort>.Count)); 857if (index >= Vector512<ushort>.Count) 861index += searchSpaceLength - (2 * Vector512<ushort>.Count); 961if (index >= Vector512<ushort>.Count) 965index += searchSpaceLength - (2 * Vector512<ushort>.Count);
src\libraries\System.Private.CoreLib\src\System\SearchValues\Strings\Helpers\TeddyHelper.cs (1)
257Vector512<ushort> source1 = Vector512.LoadUnsafe(ref source, (nuint)Vector512<ushort>.Count);
src\libraries\System.Private.CoreLib\src\System\SearchValues\Strings\SingleStringSearchValuesThreeChars.cs (7)
91if (Vector512.IsHardwareAccelerated && searchSpaceMinusValueTailLength - Vector512<ushort>.Count >= 0) 97ref char lastSearchSpace = ref Unsafe.Add(ref searchSpace, searchSpaceMinusValueTailLength - Vector512<ushort>.Count); 101ValidateReadPosition(ref searchSpaceStart, searchSpaceLength, ref searchSpace, Vector512<ushort>.Count); 102ValidateReadPosition(ref searchSpaceStart, searchSpaceLength, ref searchSpace, Vector512<ushort>.Count + (int)(_ch2ByteOffset / 2)); 103ValidateReadPosition(ref searchSpaceStart, searchSpaceLength, ref searchSpace, Vector512<ushort>.Count + (int)(_ch3ByteOffset / 2)); 115searchSpace = ref Unsafe.Add(ref searchSpace, Vector512<ushort>.Count); 119if (Unsafe.AreSame(ref searchSpace, ref Unsafe.Add(ref lastSearchSpace, Vector512<ushort>.Count)))
src\libraries\System.Private.CoreLib\src\System\SpanHelpers.Byte.cs (22)
66if (Vector512.IsHardwareAccelerated && searchSpaceMinusValueTailLength - Vector512<byte>.Count >= 0) 79searchSpaceMinusValueTailLength - (nint)Vector512<byte>.Count; 85Debug.Assert(offset + ch1ch2Distance + Vector512<byte>.Count <= searchSpaceLength); 98offset += Vector512<byte>.Count; 299if (Vector512.IsHardwareAccelerated && searchSpaceMinusValueTailLength >= Vector512<byte>.Count) 301offset = searchSpaceMinusValueTailLength - Vector512<byte>.Count; 338offset -= Vector512<byte>.Count; 339if (offset == -Vector512<byte>.Count) 546if ((((nuint)(uint)searchSpace + offset) & (nuint)(Vector512<byte>.Count - 1)) != 0) 579offset += (nuint)Vector512<byte>.Count; 823if (Vector512.IsHardwareAccelerated && length >= (nuint)Vector512<byte>.Count) 826nuint lengthToExamine = length - (nuint)Vector512<byte>.Count; 838offset += (nuint)Vector512<byte>.Count; 978if (Vector512.IsHardwareAccelerated && (lengthToExamine >= (nuint)Vector512<byte>.Count)) 980lengthToExamine -= (nuint)Vector512<byte>.Count; 992offset += (nuint)Vector512<byte>.Count; 1290=> (nuint)(uint)((length - (int)offset) & ~(Vector512<byte>.Count - 1)); 1306if (Vector512.IsHardwareAccelerated && remainder >= Vector512<byte>.Count * 2) 1308nint lastOffset = remainder - Vector512<byte>.Count; 1338offset += Vector512<byte>.Count; 1339lastOffset -= Vector512<byte>.Count; 1342remainder = lastOffset + Vector512<byte>.Count - offset;
src\libraries\System.Private.CoreLib\src\System\SpanHelpers.Char.cs (18)
71if (Vector512.IsHardwareAccelerated && searchSpaceMinusValueTailLength - Vector512<ushort>.Count >= 0) 84searchSpaceMinusValueTailLength - (nint)Vector512<ushort>.Count; 89Debug.Assert(offset + ch1ch2Distance + Vector512<ushort>.Count <= searchSpaceLength); 102offset += Vector512<ushort>.Count; 313if (Vector512.IsHardwareAccelerated && searchSpaceMinusValueTailLength >= Vector512<ushort>.Count) 315offset = searchSpaceMinusValueTailLength - Vector512<ushort>.Count; 355offset -= Vector512<ushort>.Count; 356if (offset == -Vector512<ushort>.Count) 613if (((nint)(searchSpace + (nint)offset) & (nint)(Vector512<byte>.Count - 1)) != 0) 646Debug.Assert(lengthToExamine >= Vector512<ushort>.Count); 657offset += Vector512<ushort>.Count; 658lengthToExamine -= Vector512<ushort>.Count; 878=> (length - offset) & ~(Vector512<ushort>.Count - 1); 894if (Vector512.IsHardwareAccelerated && remainder >= Vector512<ushort>.Count * 2) 896nint lastOffset = remainder - Vector512<ushort>.Count; 922offset += Vector512<ushort>.Count; 923lastOffset -= Vector512<ushort>.Count; 926remainder = (lastOffset + Vector512<ushort>.Count - offset);
src\libraries\System.Private.CoreLib\src\System\SpanHelpers.cs (10)
95if (Vector512.IsHardwareAccelerated && remainder >= Vector512<int>.Count * 2) 97nint lastOffset = remainder - Vector512<int>.Count; 119offset += Vector512<int>.Count; 120lastOffset -= Vector512<int>.Count; 123remainder = lastOffset + Vector512<int>.Count - offset; 200if (Vector512.IsHardwareAccelerated && remainder >= Vector512<long>.Count * 2) 202nint lastOffset = remainder - Vector512<long>.Count; 224offset += Vector512<long>.Count; 225lastOffset -= Vector512<long>.Count; 228remainder = lastOffset + Vector512<long>.Count - offset;
src\libraries\System.Private.CoreLib\src\System\SpanHelpers.Packed.cs (32)
149if (Avx512BW.IsSupported && Vector512.IsHardwareAccelerated && length > Vector512<short>.Count) 154if (length > 2 * Vector512<short>.Count) 160ref short twoVectorsAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - (2 * Vector512<short>.Count)); 165Vector512<short> source1 = Vector512.LoadUnsafe(ref currentSearchSpace, (nuint)Vector512<short>.Count); 173currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, 2 * Vector512<short>.Count); 181ref short oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<short>.Count); 348if (Avx512BW.IsSupported && Vector512.IsHardwareAccelerated && length > Vector512<short>.Count) 353if (length > 2 * Vector512<short>.Count) 359ref short twoVectorsAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - (2 * Vector512<short>.Count)); 364Vector512<short> source1 = Vector512.LoadUnsafe(ref currentSearchSpace, (nuint)Vector512<short>.Count); 372currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, 2 * Vector512<short>.Count); 380ref short oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<short>.Count); 557if (Avx512BW.IsSupported && Vector512.IsHardwareAccelerated && length > Vector512<short>.Count) 563if (length > 2 * Vector512<short>.Count) 569ref short twoVectorsAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - (2 * Vector512<short>.Count)); 574Vector512<short> source1 = Vector512.LoadUnsafe(ref currentSearchSpace, (nuint)Vector512<short>.Count); 583currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, 2 * Vector512<short>.Count); 591ref short oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<short>.Count); 772if (Avx512BW.IsSupported && Vector512.IsHardwareAccelerated && length > Vector512<short>.Count) 779if (length > 2 * Vector512<short>.Count) 785ref short twoVectorsAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - (2 * Vector512<short>.Count)); 790Vector512<short> source1 = Vector512.LoadUnsafe(ref currentSearchSpace, (nuint)Vector512<short>.Count); 799currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, 2 * Vector512<short>.Count); 807ref short oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<short>.Count); 972if (Avx512BW.IsSupported && Vector512.IsHardwareAccelerated && length > Vector512<short>.Count) 978if (length > 2 * Vector512<short>.Count) 984ref short twoVectorsAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - (2 * Vector512<short>.Count)); 989Vector512<short> source1 = Vector512.LoadUnsafe(ref currentSearchSpace, (nuint)Vector512<short>.Count); 997currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, 2 * Vector512<short>.Count); 1005ref short oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<short>.Count); 1290if (offsetInVector >= Vector512<short>.Count) 1294offsetInVector -= Vector512<short>.Count;
src\libraries\System.Private.CoreLib\src\System\SpanHelpers.T.cs (48)
1368else if (Vector512.IsHardwareAccelerated && length >= Vector512<T>.Count) 1372ref T oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, (uint)(length - Vector512<T>.Count)); 1384currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, Vector512<T>.Count); 1389if ((uint)length % Vector512<T>.Count != 0) 1559else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 1563ref TValue oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<TValue>.Count); 1575currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, Vector512<TValue>.Count); 1580if ((uint)length % Vector512<TValue>.Count != 0) 1784else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 1788ref TValue oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<TValue>.Count); 1797currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, Vector512<TValue>.Count); 1806if ((uint)length % Vector512<TValue>.Count != 0) 1991else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 1995ref TValue oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<TValue>.Count); 2004currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, Vector512<TValue>.Count); 2013if ((uint)length % Vector512<TValue>.Count != 0) 2147else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 2151ref TValue oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, length - Vector512<TValue>.Count); 2161currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, Vector512<TValue>.Count); 2170if ((uint)length % Vector512<TValue>.Count != 0) 2310else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 2315ref TValue oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, (uint)(length - Vector512<TValue>.Count)); 2325currentSearchSpace = ref Unsafe.Add(ref currentSearchSpace, Vector512<TValue>.Count); 2334if ((uint)length % Vector512<TValue>.Count != 0) 2492else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 2631else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 2634nint offset = length - Vector512<TValue>.Count; 2644offset -= Vector512<TValue>.Count; 2816else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 2819nint offset = length - Vector512<TValue>.Count; 2829offset -= Vector512<TValue>.Count; 2966else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 2969nint offset = length - Vector512<TValue>.Count; 2979offset -= Vector512<TValue>.Count; 3126else if (!Vector512.IsHardwareAccelerated || length < (uint)Vector512<T>.Count) 3153nuint lastVectorIndex = length - (uint)Vector512<T>.Count; 3165idx += (uint)Vector512<T>.Count; 3224else if (Vector512.IsHardwareAccelerated && length >= Vector512<TValue>.Count) 3228nint offset = length - Vector512<TValue>.Count; 3238offset -= Vector512<TValue>.Count; 3542else if (!Vector512.IsHardwareAccelerated || length < (uint)Vector512<T>.Count) 3578ref T oneVectorAwayFromEnd = ref Unsafe.Add(ref searchSpace, (uint)(length - Vector512<T>.Count)); 3687else if (!Vector512.IsHardwareAccelerated || length < Vector512<T>.Count) 3720nint offset = length - Vector512<T>.Count; 3731offset -= Vector512<T>.Count; 3785if (Vector512.IsHardwareAccelerated && length >= Vector512<T>.Count) 3788ref T oneVectorAwayFromEnd = ref Unsafe.Subtract(ref end, Vector512<T>.Count); 3792current = ref Unsafe.Add(ref current, Vector512<T>.Count);
src\libraries\System.Private.CoreLib\src\System\String.Manipulation.cs (5)
1300if (Vector512.IsHardwareAccelerated && length >= (uint)Vector512<ushort>.Count) 1302nuint adjust = (length - remainingLength) & ((uint)Vector512<ushort>.Count - 1); 2043if (Vector512.IsHardwareAccelerated && lengthToExamine >= (uint)Vector512<ushort>.Count*2) 2069offset += (nuint)Vector512<ushort>.Count; 2070} while (offset <= lengthToExamine - (nuint)Vector512<ushort>.Count);
src\libraries\System.Private.CoreLib\src\System\Text\Ascii.Equality.cs (18)
65else if (Vector512.IsHardwareAccelerated && length >= (uint)Vector512<TLeft>.Count) 71Debug.Assert(Vector512<TLeft>.Count == Vector512<TRight>.Count 72|| (typeof(TLoader) == typeof(WideningLoader) && Vector512<TLeft>.Count == Vector512<TRight>.Count * 2)); 73ref TRight oneVectorAwayFromRightEnd = ref Unsafe.Add(ref currentRightSearchSpace, length - (uint)Vector512<TLeft>.Count); 83currentRightSearchSpace = ref Unsafe.Add(ref currentRightSearchSpace, Vector512<TLeft>.Count); 84currentLeftSearchSpace = ref Unsafe.Add(ref currentLeftSearchSpace, Vector512<TLeft>.Count); 89if (length % (uint)Vector512<TLeft>.Count != 0) 91ref TLeft oneVectorAwayFromLeftEnd = ref Unsafe.Add(ref left, length - (uint)Vector512<TLeft>.Count); 235else if (Vector512.IsHardwareAccelerated && length >= (uint)Vector512<TRight>.Count) 240ref TRight oneVectorAwayFromRightEnd = ref Unsafe.Add(ref currentRightSearchSpace, length - (uint)Vector512<TRight>.Count); 274currentRightSearchSpace = ref Unsafe.Add(ref currentRightSearchSpace, (uint)Vector512<TRight>.Count); 280if (length % (uint)Vector512<TRight>.Count != 0) 473public static nuint Count512 => (uint)Vector512<T>.Count; 581Debug.Assert(Vector512<byte>.Count == Vector512<ushort>.Count * 2); 591Vector512<ushort> rightNext = Vector512.LoadUnsafe(ref utf16, (uint)Vector512<ushort>.Count);
src\libraries\System.Private.CoreLib\src\System\Text\Ascii.Utility.cs (4)
143if (Vector512.IsHardwareAccelerated && bufferLength >= 2 * (uint)Vector512<byte>.Count) 763if (Vector512.IsHardwareAccelerated && bufferLength >= 2 * (uint)Vector512<ushort>.Count) 1373if (Vector512.IsHardwareAccelerated && elementCount >= 2 * (uint)Vector512<byte>.Count) 2075if (Vector512.IsHardwareAccelerated && (elementCount - currentOffset) >= (uint)Vector512<byte>.Count)
System.Runtime.Numerics (2)
System\Numerics\NumericsHelpers.cs (2)
129while (Vector512.IsHardwareAccelerated && d.Length - offset >= Vector512<uint>.Count) 133offset += Vector512<uint>.Count;