Skip to content

[API Proposal]: Arm64: FEAT_SVE: loads pt 2 #97831

Closed
@tannergooding

Description

@tannergooding

Continuing from #94006

namespace System.Runtime.Intrinsics.Arm

/// VectorT Summary
public abstract class Sve : AdvSimd /// Feature: FEAT_SVE  Category: loads
{
    /// T: float, double, sbyte, short, int, long, byte, ushort, uint, ulong
    public static unsafe (Vector<T>, Vector<T>) LoadVectorx2(Vector<T> mask, T* address); // LD2W or LD2D or LD2B or LD2H

    /// T: float, double, sbyte, short, int, long, byte, ushort, uint, ulong
    public static unsafe (Vector<T>, Vector<T>, Vector<T>) LoadVectorx3(Vector<T> mask, T* address); // LD3W or LD3D or LD3B or LD3H

    /// T: float, double, sbyte, short, int, long, byte, ushort, uint, ulong
    public static unsafe (Vector<T>, Vector<T>, Vector<T>, Vector<T>) LoadVectorx4(Vector<T> mask, T* address); // LD4W or LD4D or LD4B or LD4H

    /// T: byte, sbyte
    public static unsafe void Prefetch8Bit(Vector<T> mask, void* address, SvePrefetchType op); // PRFB

    /// T: short, ushort
    public static unsafe void Prefetch16Bit(Vector<T> mask, void* address, SvePrefetchType op); // PRFH

    /// T: int, uint
    public static unsafe void Prefetch32Bit(Vector<T> mask, void* address, SvePrefetchType op); // PRFW

    /// T: long, ulong
    public static unsafe void Prefetch64Bit(Vector<T> mask, void* address, SvePrefetchType op); // PRFD
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions