-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Open
Labels
api-ready-for-reviewAPI is ready for review, it is NOT ready for implementationAPI is ready for review, it is NOT ready for implementationarch-arm64area-System.Runtime.Intrinsicsarm-sveWork related to arm64 SVE/SVE2 supportWork related to arm64 SVE/SVE2 support
Milestone
Description
namespace System.Runtime.Intrinsics.Arm;
/// VectorT Summary
public abstract partial class Sve2 : AdvSimd /// Feature: FEAT_SVE2 Category: mask
{
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanMask(int left, int right); // WHILEGT
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanMask(long left, long right); // WHILEGT
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanMask(uint left, uint right); // WHILEHI
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanMask(ulong left, ulong right); // WHILEHI
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanOrEqualMask(int left, int right); // WHILEGE
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanOrEqualMask(long left, long right); // WHILEGE
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanOrEqualMask(uint left, uint right); // WHILEHS
/// T: byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileGreaterThanOrEqualMask(ulong left, ulong right); // WHILEHS
/// T: float, double, sbyte, short, int, long, byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileReadAfterWriteMask(T* left, T* right); // WHILERW
/// T: float, double, sbyte, short, int, long, byte, ushort, uint, ulong
public static unsafe Vector<T> CreateWhileWriteAfterReadMask(T* left, T* right); // WHILEWR
/// T: sbyte, short, byte, ushort
public static unsafe Vector<T> Match(Vector<T> mask, Vector<T> left, Vector<T> right); // MATCH
/// T: sbyte, short, byte, ushort
public static unsafe Vector<T> NoMatch(Vector<T> mask, Vector<T> left, Vector<T> right); // NMATCH
/// T: [sbyte, short], [short, int], [int, long], [byte, ushort], [ushort, uint], [uint, ulong]
public static unsafe Vector<T> SaturatingExtractNarrowingLower(Vector<T2> value); // SQXTNB or UQXTNB
/// T: [sbyte, short], [short, int], [int, long], [byte, ushort], [ushort, uint], [uint, ulong]
public static unsafe Vector<T> SaturatingExtractNarrowingUpper(Vector<T> even, Vector<T2> op); // SQXTNT or UQXTNT
/// T: [byte, short], [ushort, int], [uint, long]
public static unsafe Vector<T> SaturatingExtractUnsignedNarrowingLower(Vector<T2> value); // SQXTUNB
/// T: [byte, short], [ushort, int], [uint, long]
public static unsafe Vector<T> SaturatingExtractUnsignedNarrowingUpper(Vector<T> even, Vector<T2> op); // SQXTUNT
/// total method signatures: 16
}
Match
Detect any matching elements, setting the condition flags
Compares each active 8-bit or 16-bit character left
with all of the characters in the corresponding 128-bit segment of right
. Where the first source element detects any matching characters in the second segment it places true in the corresponding element of the destination predicate, otherwise false. Inactive elements in the destination predicate register are set to zero.
NoMatch
The opposite of Match()
Metadata
Metadata
Assignees
Labels
api-ready-for-reviewAPI is ready for review, it is NOT ready for implementationAPI is ready for review, it is NOT ready for implementationarch-arm64area-System.Runtime.Intrinsicsarm-sveWork related to arm64 SVE/SVE2 supportWork related to arm64 SVE/SVE2 support