Skip to content

[API Proposal]: Arm64: FEAT_SVE2: counting #94017

Open
@a74nh

Description

@a74nh
namespace System.Runtime.Intrinsics.Arm

/// VectorT Summary
public abstract class Sve : AdvSimd /// Feature: FEAT_SVE2  Category: counting
{

  /// T: [uint, int], [ulong, long]
  public static unsafe Vector<T> CountMatchingElements(Vector<T2> mask, Vector<T2> left, Vector<T2> right); // HISTCNT

  /// T: uint, ulong
  public static unsafe Vector<T> CountMatchingElements(Vector<T> mask, Vector<T> left, Vector<T> right); // HISTCNT

  public static unsafe Vector<byte> CountMatchingElementsIn128BitSegments(Vector<sbyte> left, Vector<sbyte> right); // HISTSEG

  public static unsafe Vector<byte> CountMatchingElementsIn128BitSegments(Vector<byte> left, Vector<byte> right); // HISTSEG

  /// total method signatures: 4

}

CountMatchingElements

Count matching elements in vector
Compares each active element of the left with all active elements with an element number less than or equal to its own in right, and places the count of matching elements in the corresponding element of the destination vector. Inactive elements in the destination vector are set to zero.

CountMatchingElementsIn128BitSegments

Count matching elements in vector segments
Compares each 8-bit byte element of left with all of the elements in the corresponding 128-bit segment of right and places the count of matching elements in the corresponding element of the destination vector.

Metadata

Metadata

Assignees

No one assigned

    Labels

    api-ready-for-reviewAPI is ready for review, it is NOT ready for implementationapi-suggestionEarly API idea and discussion, it is NOT ready for implementationarch-arm64area-System.Runtime.Intrinsicsarm-sveWork related to arm64 SVE/SVE2 support

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions