diff --git a/src/benchmarks/micro/MicroBenchmarks.csproj b/src/benchmarks/micro/MicroBenchmarks.csproj
index 9e21bcdb8a3..665ba21a9a3 100644
--- a/src/benchmarks/micro/MicroBenchmarks.csproj
+++ b/src/benchmarks/micro/MicroBenchmarks.csproj
@@ -263,6 +263,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/benchmarks/micro/sve/Clamp.cs b/src/benchmarks/micro/sve/Clamp.cs
index 9788913eb98..f90a2032780 100644
--- a/src/benchmarks/micro/sve/Clamp.cs
+++ b/src/benchmarks/micro/sve/Clamp.cs
@@ -90,7 +90,7 @@ public unsafe void SveClamp()
Vector valVec = new Vector(Size / 2);
Vector minVec = Vector.Indices;
Vector pTrue = Sve.CreateTrueMaskInt32();
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, length);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt32(i, length);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector maxVec = Sve.ShiftLeftLogical(minVec, Vector.One);
@@ -99,7 +99,7 @@ public unsafe void SveClamp()
minVec = Sve.Add(minVec, new Vector(cntw));
i += cntw;
- pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, length);
+ pLoop = Sve.CreateWhileLessThanMaskInt32(i, length);
}
_output = (int)Sve.AddAcross(resVec).ToScalar();
}
@@ -116,7 +116,7 @@ public unsafe void SveTail()
Vector minVec = Vector.Indices;
for (; i < length; i += cntw)
{
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, length);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt32(i, length);
Vector maxVec = Sve.ShiftLeftLogical(minVec, Vector.One);
Vector tmpVec = Sve.Min(Sve.Max(valVec, minVec), maxVec);
resVec = Sve.ConditionalSelect(pLoop, Sve.Add(resVec, tmpVec), resVec);
diff --git a/src/benchmarks/micro/sve/ComplexDotProduct.cs b/src/benchmarks/micro/sve/ComplexDotProduct.cs
index fafbd9b0236..7483637b41d 100644
--- a/src/benchmarks/micro/sve/ComplexDotProduct.cs
+++ b/src/benchmarks/micro/sve/ComplexDotProduct.cs
@@ -213,7 +213,7 @@ public unsafe void SveComplexDotProduct()
// Create mask for the imaginary half of a word.
Vector imMask = (Vector)(new Vector(0xFFFF0000u));
Vector pTrue = Sve.CreateTrueMaskInt32();
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt32(0, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
// Load inputs.
@@ -248,7 +248,7 @@ public unsafe void SveComplexDotProduct()
// Handle loop.
i += cntw;
- pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskInt32(i, Size);
}
}
}
@@ -263,7 +263,7 @@ public unsafe void Sve2ComplexDotProduct()
int cntw = (int)Sve.Count32BitElements();
Vector pTrue = Sve.CreateTrueMaskInt32();
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt32(0, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector a1 = (Vector)Sve.LoadVector(pLoop, (int*)(a + 4 * i));
@@ -276,7 +276,7 @@ public unsafe void Sve2ComplexDotProduct()
// Handle loop.
i += cntw;
- pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskInt32(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/ComplexMultiply.cs b/src/benchmarks/micro/sve/ComplexMultiply.cs
index 199d6948f4c..06c5b5402e1 100644
--- a/src/benchmarks/micro/sve/ComplexMultiply.cs
+++ b/src/benchmarks/micro/sve/ComplexMultiply.cs
@@ -135,11 +135,11 @@ public unsafe void SveComplexMultiply()
// Handle remaining elements using predicates.
lmt = Size * 2;
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(i, lmt);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(i, lmt);
if (Sve.TestFirstTrue(pTrue, pLoop))
{
// Compute the predicate for elements in i + cntw.
- Vector pTail = Sve.CreateWhileLessThanMask32Bit(i + cntw, lmt);
+ Vector pTail = Sve.CreateWhileLessThanMaskUInt32(i + cntw, lmt);
// Unzip the predicates pLoop and pTail for 2xVector load/store.
Vector pInner = Sve.UnzipEven(pLoop, pTail);
@@ -190,7 +190,7 @@ public unsafe void Sve2ComplexMultiply()
// Handle remaining elements.
lmt = Size;
- Vector pLoop = Sve.CreateWhileLessThanMask64Bit(i, lmt);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt64(i, lmt);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector a1 = (Vector)Sve2.LoadVector(pLoop, (ulong*)a + i);
@@ -201,7 +201,7 @@ public unsafe void Sve2ComplexMultiply()
Sve.StoreAndZip(pLoop, (ulong*)c + i, (Vector)(c1));
i += cntd;
- pLoop = Sve.CreateWhileLessThanMask64Bit(i, lmt);
+ pLoop = Sve.CreateWhileLessThanMaskUInt64(i, lmt);
}
}
}
diff --git a/src/benchmarks/micro/sve/Exponent.cs b/src/benchmarks/micro/sve/Exponent.cs
index add346fb147..4e36cda4584 100644
--- a/src/benchmarks/micro/sve/Exponent.cs
+++ b/src/benchmarks/micro/sve/Exponent.cs
@@ -168,7 +168,7 @@ public unsafe void SveExponent()
Vector constVec = new Vector(new ReadOnlySpan(&d[3], 4));
Vector pTrue = Sve.CreateTrueMaskUInt32();
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(0, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector x = (Vector)Sve.LoadVector(pLoop, (uint*)(input + i));
@@ -197,7 +197,7 @@ public unsafe void SveExponent()
// Handle loop.
i += cntw;
- pLoop = Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt32(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/FP64Overflow.cs b/src/benchmarks/micro/sve/FP64Overflow.cs
index 973a7ec6eb2..6102792ff7e 100644
--- a/src/benchmarks/micro/sve/FP64Overflow.cs
+++ b/src/benchmarks/micro/sve/FP64Overflow.cs
@@ -153,7 +153,7 @@ public unsafe void SveFP64Overflow()
Vector maskVec = new Vector(1023);
Vector pTrue = Sve.CreateTrueMaskUInt64();
- Vector pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
// Load Vector as ulong then convert to Vector.
@@ -178,7 +178,7 @@ public unsafe void SveFP64Overflow()
// Handle loop.
i += cntd;
- pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
}
}
}
@@ -193,7 +193,7 @@ public unsafe void Sve2FP64Overflow()
int cntd = (int)Sve.Count64BitElements();
Vector pTrue = Sve.CreateTrueMaskUInt64();
- Vector pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
// Load input vectors.
@@ -214,7 +214,7 @@ public unsafe void Sve2FP64Overflow()
// Handle loop.
i += cntd;
- pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/FastDivision.cs b/src/benchmarks/micro/sve/FastDivision.cs
index 24f5b86f790..38764883fc6 100644
--- a/src/benchmarks/micro/sve/FastDivision.cs
+++ b/src/benchmarks/micro/sve/FastDivision.cs
@@ -123,7 +123,7 @@ public unsafe void SveFastDivision()
int cntd = (int)Sve.Count64BitElements();
Vector pTrue = Sve.CreateTrueMaskUInt64();
- Vector pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector input1Vec = (Vector)Sve.LoadVector(pLoop, (ulong*)input1 + i);
@@ -145,7 +145,7 @@ public unsafe void SveFastDivision()
Sve.StoreAndZip(pLoop, (ulong*)output + i, (Vector)outVec);
i += cntd;
- pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/GatherLoad.cs b/src/benchmarks/micro/sve/GatherLoad.cs
index badec15d255..35cf8a1c5be 100644
--- a/src/benchmarks/micro/sve/GatherLoad.cs
+++ b/src/benchmarks/micro/sve/GatherLoad.cs
@@ -80,7 +80,7 @@ public unsafe void SveGatherLoad()
Vector resVec = Vector.Zero;
Vector pTrue = Sve.CreateTrueMaskUInt32();
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(0, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
// Load indices
@@ -91,7 +91,7 @@ public unsafe void SveGatherLoad()
resVec = Sve.Add(resVec, objVec);
i += cntw;
- pLoop = Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt32(i, Size);
}
// Add up all elements in resVec.
uint res = (uint)Sve.AddAcross(resVec).ToScalar();
diff --git a/src/benchmarks/micro/sve/Logarithm.cs b/src/benchmarks/micro/sve/Logarithm.cs
index 3400c2a6b58..9222e7521c4 100644
--- a/src/benchmarks/micro/sve/Logarithm.cs
+++ b/src/benchmarks/micro/sve/Logarithm.cs
@@ -174,7 +174,7 @@ public unsafe void SveLogarithm()
Vector pTrue = Sve.CreateTrueMaskUInt32();
Vector pTruef = Sve.CreateTrueMaskSingle();
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(0, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector x = (Vector)Sve.LoadVector(pLoop, (uint*)(input + i));
@@ -239,7 +239,7 @@ public unsafe void SveLogarithm()
// Handle loop.
i += cntw;
- pLoop = Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt32(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/MultiplyAdd.cs b/src/benchmarks/micro/sve/MultiplyAdd.cs
index 407ebf187cc..438bb575b11 100644
--- a/src/benchmarks/micro/sve/MultiplyAdd.cs
+++ b/src/benchmarks/micro/sve/MultiplyAdd.cs
@@ -154,7 +154,7 @@ public unsafe void SveMultiplyAdd()
// Handle remaining elements using predicates.
lmt = Size;
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, lmt);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt32(i, lmt);
while (Sve.TestAnyTrue(pTrue, pLoop))
{
Vector aVec = Sve.LoadVector(pLoop, a + i);
@@ -165,7 +165,7 @@ public unsafe void SveMultiplyAdd()
// Increment by a vector length.
i += cntw;
- pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, lmt);
+ pLoop = Sve.CreateWhileLessThanMaskInt32(i, lmt);
}
// Sum up all elements in the 4 result vectors.
diff --git a/src/benchmarks/micro/sve/MultiplyPow2.cs b/src/benchmarks/micro/sve/MultiplyPow2.cs
index 1639d120a5d..cc13932133a 100644
--- a/src/benchmarks/micro/sve/MultiplyPow2.cs
+++ b/src/benchmarks/micro/sve/MultiplyPow2.cs
@@ -116,7 +116,7 @@ public unsafe void SveMultiplyPow2()
int cntd = (int)Sve.Count64BitElements();
Vector pTrue = Sve.CreateTrueMaskUInt64();
- Vector pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
// Cast the array pointers to ulong so the predicate can be shared.
@@ -129,7 +129,7 @@ public unsafe void SveMultiplyPow2()
// Handle loop.
i += cntd;
- pLoop = Sve.CreateWhileLessThanMask64Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt64(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/OddEvenSort.cs b/src/benchmarks/micro/sve/OddEvenSort.cs
index 6e4a302351b..7a17f6044b0 100644
--- a/src/benchmarks/micro/sve/OddEvenSort.cs
+++ b/src/benchmarks/micro/sve/OddEvenSort.cs
@@ -180,7 +180,7 @@ public unsafe void SveOddEvenSort()
for (; j < n - 1; j += (cntw << 1))
{
// Get predicate for elements to load/store.
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(0, (n - j) / 2);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(0, (n - j) / 2);
// Interleaved load elements.
(Vector a0, Vector a1) = Sve.Load2xVectorAndUnzip(pLoop, source + j);
@@ -248,7 +248,7 @@ public unsafe void SveTail()
// Handle tail using predicates.
for (; j < n - 1; j += (cntw << 1))
{
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(0, (n - j) / 2);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(0, (n - j) / 2);
(Vector a0, Vector a1) = Sve.Load2xVectorAndUnzip(pLoop, source + j);
Vector pCmp = Sve.ConditionalSelect(pLoop, Sve.CompareGreaterThan(a0, a1), Sve.CreateFalseMaskUInt32());
diff --git a/src/benchmarks/micro/sve/PairwiseAdd.cs b/src/benchmarks/micro/sve/PairwiseAdd.cs
index 3d6af5446b5..f612e2b2e00 100644
--- a/src/benchmarks/micro/sve/PairwiseAdd.cs
+++ b/src/benchmarks/micro/sve/PairwiseAdd.cs
@@ -133,11 +133,11 @@ public unsafe void SvePairwiseAdd()
// Handle remaining elements using predicates.
lmt = Size * 2;
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, lmt);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt32(i, lmt);
if (Sve.TestFirstTrue(pTrue, pLoop))
{
// Compute the predicate for elements in i + cntw.
- Vector pTail = (Vector)Sve.CreateWhileLessThanMask32Bit(i + cntw, lmt);
+ Vector pTail = Sve.CreateWhileLessThanMaskInt32(i + cntw, lmt);
// Unzip the predicates pLoop and pTail for 2xVector load/store.
Vector pInner = Sve.UnzipEven(pLoop, pTail);
@@ -181,7 +181,7 @@ public unsafe void Sve2PairwiseAdd()
// Handle remaining elements.
lmt = Size * 2;
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, lmt);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt32(i, lmt);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector a0 = Sve.LoadVector(pLoop, a + i);
@@ -189,7 +189,7 @@ public unsafe void Sve2PairwiseAdd()
Vector c0 = Sve2.AddPairwise(a0, b0);
Sve.StoreAndZip(pLoop, c + i, c0);
i += cntw;
- pLoop = (Vector)Sve.CreateWhileLessThanMask32Bit(i, lmt);
+ pLoop = Sve.CreateWhileLessThanMaskInt32(i, lmt);
}
}
}
diff --git a/src/benchmarks/micro/sve/Partition.cs b/src/benchmarks/micro/sve/Partition.cs
index 4fa1222dfeb..79433c53cdc 100644
--- a/src/benchmarks/micro/sve/Partition.cs
+++ b/src/benchmarks/micro/sve/Partition.cs
@@ -86,7 +86,7 @@ public unsafe ulong SvePartition()
);
// Create a predicate for the loop.
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(i, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(i, Size);
while (Sve.TestAnyTrue(Sve.CreateTrueMaskUInt32(), pLoop))
{
@@ -119,7 +119,7 @@ public unsafe ulong SvePartition()
indexRight = Sve.SaturatingIncrementByActiveElementCount(indexRight, pInner);
i = Sve.SaturatingIncrementBy32BitElementCount(i, 1);
- pLoop = Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt32(i, Size);
}
return indexRight;
diff --git a/src/benchmarks/micro/sve/ScatterStore.cs b/src/benchmarks/micro/sve/ScatterStore.cs
index e5ec7fa651f..0728deec252 100644
--- a/src/benchmarks/micro/sve/ScatterStore.cs
+++ b/src/benchmarks/micro/sve/ScatterStore.cs
@@ -80,7 +80,7 @@ public unsafe void SveScatterStore()
Vector ones = Vector.One;
Vector pTrue = Sve.CreateTrueMaskUInt32();
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(0, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector idxVec = Sve.LoadVector(pLoop, indices + i);
@@ -89,7 +89,7 @@ public unsafe void SveScatterStore()
Sve.Scatter(pLoop, objects, idxVec, ones);
i += cntw;
- pLoop = Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt32(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/SobelFilter.cs b/src/benchmarks/micro/sve/SobelFilter.cs
index 19540ea3caa..ecb06c5caa1 100644
--- a/src/benchmarks/micro/sve/SobelFilter.cs
+++ b/src/benchmarks/micro/sve/SobelFilter.cs
@@ -195,8 +195,8 @@ public unsafe void SveSobelFilter()
Vector resVec;
// Load coefficients of the filter into vectors.
- Vector kxVec = Sve.LoadVector((Vector)Sve.CreateWhileLessThanMask32Bit(0, 3), kx);
- Vector kyVec = Sve.LoadVector((Vector)Sve.CreateWhileLessThanMask32Bit(0, 3), ky);
+ Vector kxVec = Sve.LoadVector(Sve.CreateWhileLessThanMaskSingle(0, 3), kx);
+ Vector kyVec = Sve.LoadVector(Sve.CreateWhileLessThanMaskSingle(0, 3), ky);
for (int j = 0; j < img_size; j++)
{
// Load the elements from input and output the intermediate result to temp.
@@ -205,7 +205,7 @@ public unsafe void SveSobelFilter()
for (int i = 0; i < out_size; i += cntw)
{
- Vector pRow = (Vector)Sve.CreateWhileLessThanMask32Bit(i, out_size);
+ Vector pRow = Sve.CreateWhileLessThanMaskSingle(i, out_size);
// Load input elements from the next 3 columns.
Vector col0 = Sve.LoadVector(pRow, in_ptr + i);
@@ -228,7 +228,7 @@ public unsafe void SveSobelFilter()
for (int i = 0; i < out_size; i += cntw)
{
- Vector pRow = (Vector)Sve.CreateWhileLessThanMask32Bit(i, out_size);
+ Vector pRow = Sve.CreateWhileLessThanMaskSingle(i, out_size);
// Load input elements from the next 3 rows.
Vector row0 = Sve.LoadVector(pRow, in_ptr + i);
diff --git a/src/benchmarks/micro/sve/SquareRoot.cs b/src/benchmarks/micro/sve/SquareRoot.cs
index f889944d9a4..d2e2f4749ab 100644
--- a/src/benchmarks/micro/sve/SquareRoot.cs
+++ b/src/benchmarks/micro/sve/SquareRoot.cs
@@ -94,7 +94,7 @@ public unsafe void SveSquareRoot()
// We use Vector for predicates since there are no Vector
// overloads for TestFirstTrue and CreateWhileLessThanMask etc.
Vector pTrue = Sve.CreateTrueMaskUInt32();
- Vector pLoop = Sve.CreateWhileLessThanMask32Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt32(0, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
// Since pLoop is a Vector predicate, we load the input as uint array,
@@ -107,7 +107,7 @@ public unsafe void SveSquareRoot()
// Handle loop.
i += cntw;
- pLoop = Sve.CreateWhileLessThanMask32Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt32(i, Size);
}
}
}
diff --git a/src/benchmarks/micro/sve/StrCmp.cs b/src/benchmarks/micro/sve/StrCmp.cs
index 997f65b809c..14cf905a62e 100644
--- a/src/benchmarks/micro/sve/StrCmp.cs
+++ b/src/benchmarks/micro/sve/StrCmp.cs
@@ -120,7 +120,7 @@ public unsafe long SveStrCmp()
int elemsInVector = (int)Sve.Count8BitElements();
Vector ptrue = Sve.CreateTrueMaskByte();
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask8Bit(i, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskByte(i, Size);
Vector cmp = Vector.Zero;
Vector arr1_data, arr2_data;
@@ -141,7 +141,7 @@ public unsafe long SveStrCmp()
i += elemsInVector;
- pLoop = (Vector)Sve.CreateWhileLessThanMask8Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskByte(i, Size);
}
// create a bitmask to find position of changed value
diff --git a/src/benchmarks/micro/sve/StrIndexOf.cs b/src/benchmarks/micro/sve/StrIndexOf.cs
index 293b3336df3..e0da41462d1 100644
--- a/src/benchmarks/micro/sve/StrIndexOf.cs
+++ b/src/benchmarks/micro/sve/StrIndexOf.cs
@@ -109,7 +109,7 @@ public unsafe int SveIndexOf()
fixed (char* arr_ptr = _array)
{
Vector target = new Vector((ushort)_searchValue);
- var pLoop = (Vector)Sve.CreateWhileLessThanMask16Bit(i, Size);
+ var pLoop = Sve.CreateWhileLessThanMaskUInt16(i, Size);
while (Sve.TestFirstTrue(Sve.CreateTrueMaskUInt16(), pLoop))
{
@@ -126,7 +126,7 @@ public unsafe int SveIndexOf()
}
i += (int)Sve.Count16BitElements();
- pLoop = (Vector)Sve.CreateWhileLessThanMask16Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskUInt16(i, Size);
}
return -1;
diff --git a/src/benchmarks/micro/sve/StrLen.cs b/src/benchmarks/micro/sve/StrLen.cs
index 5bbde0991e0..7f33c824338 100644
--- a/src/benchmarks/micro/sve/StrLen.cs
+++ b/src/benchmarks/micro/sve/StrLen.cs
@@ -120,7 +120,7 @@ public unsafe ulong SveStrLen()
ulong i = 0;
ulong elemsInVector = Sve.Count8BitElements();
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask8Bit((int)i, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskByte((int)i, Size);
fixed (byte* arr_ptr = _array)
{
@@ -134,7 +134,7 @@ public unsafe ulong SveStrLen()
else
{
i += elemsInVector;
- pLoop = (Vector)Sve.CreateWhileLessThanMask8Bit((int)i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskByte((int)i, Size);
}
}
diff --git a/src/benchmarks/micro/sve/TCPChecksum.cs b/src/benchmarks/micro/sve/TCPChecksum.cs
index 874eb514083..3463d688ab1 100644
--- a/src/benchmarks/micro/sve/TCPChecksum.cs
+++ b/src/benchmarks/micro/sve/TCPChecksum.cs
@@ -177,7 +177,7 @@ public unsafe void SveTCPChecksum()
int i = 0;
Vector acc = Vector.Zero;
- Vector pLoop = Sve.CreateWhileLessThanMask16Bit(0, lengthWords);
+ Vector pLoop = Sve.CreateWhileLessThanMaskUInt16(0, lengthWords);
while (Sve.TestAnyTrue(pTrue, pLoop))
{
Vector d = Sve.LoadVector(pLoop, ((ushort*)p) + i);
@@ -187,7 +187,7 @@ public unsafe void SveTCPChecksum()
// Handle loop predicate.
i += (int)Sve.Count16BitElements();
- pLoop = Sve.CreateWhileLessThanMask16Bit(i, lengthWords);
+ pLoop = Sve.CreateWhileLessThanMaskUInt16(i, lengthWords);
}
// Reduce result to scalar.
ulong sum = Sve.AddAcross(acc).ToScalar();
diff --git a/src/benchmarks/micro/sve/UpscaleFilter.cs b/src/benchmarks/micro/sve/UpscaleFilter.cs
index 02319660630..f2b13df89be 100644
--- a/src/benchmarks/micro/sve/UpscaleFilter.cs
+++ b/src/benchmarks/micro/sve/UpscaleFilter.cs
@@ -137,7 +137,7 @@ public unsafe void Sve2UpscaleFilter()
{
int lmt = Size - 1;
int i = 0;
- Vector pLoop = Sve.CreateWhileLessThanMask8Bit(0, lmt);
+ Vector pLoop = Sve.CreateWhileLessThanMaskByte(0, lmt);
while (Sve.TestAnyTrue(pTrue, pLoop))
{
// Load two consecutive samples.
@@ -168,7 +168,7 @@ public unsafe void Sve2UpscaleFilter()
Sve.StoreAndZip(pLoop, output + i * 2, (b0, b1));
i += (int)Sve.Count8BitElements();
- pLoop = Sve.CreateWhileLessThanMask8Bit(i, lmt);
+ pLoop = Sve.CreateWhileLessThanMaskByte(i, lmt);
}
}
}
diff --git a/src/benchmarks/micro/sve/VectorMax.cs b/src/benchmarks/micro/sve/VectorMax.cs
index 41e559099e7..2e040da2104 100644
--- a/src/benchmarks/micro/sve/VectorMax.cs
+++ b/src/benchmarks/micro/sve/VectorMax.cs
@@ -129,7 +129,7 @@ public unsafe void SveVectorMax()
short cnth = (short)Sve.Count16BitElements();
Vector pTrue = Sve.CreateTrueMaskInt16();
- Vector pLoop = (Vector)Sve.CreateWhileLessThanMask16Bit(0, Size);
+ Vector pLoop = Sve.CreateWhileLessThanMaskInt16(0, Size);
Vector idxVec = Vector.Indices;
// Initialize the first vector worth of values.
@@ -137,7 +137,7 @@ public unsafe void SveVectorMax()
Vector maxIdxVec = idxVec;
i += cnth;
- pLoop = (Vector)Sve.CreateWhileLessThanMask16Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskInt16(i, Size);
while (Sve.TestFirstTrue(pTrue, pLoop))
{
Vector val = Sve.LoadVector(pLoop, input + i);
@@ -152,7 +152,7 @@ public unsafe void SveVectorMax()
// Handle loop.
i += cnth;
- pLoop = (Vector)Sve.CreateWhileLessThanMask16Bit(i, Size);
+ pLoop = Sve.CreateWhileLessThanMaskInt16(i, Size);
}
// Get the maximum element across the max vector.