@@ -669,6 +669,112 @@ internal Arm64() { }
669
669
/// </summary>
670
670
public static unsafe Vector < ulong > BooleanNot ( Vector < ulong > value ) => BooleanNot ( value ) ;
671
671
672
+ /// Compute vector addresses for 16-bit data
673
+
674
+ /// <summary>
675
+ /// svuint32_t svadrh[_u32base]_[s32]index(svuint32_t bases, svint32_t indices)
676
+ /// ADR Zresult.S, [Zbases.S, Zindices.S, LSL #1]
677
+ /// </summary>
678
+ public static unsafe Vector < uint > Compute16BitAddresses ( Vector < uint > bases , Vector < int > indices ) => Compute16BitAddresses ( bases , indices ) ;
679
+
680
+ /// <summary>
681
+ /// svuint32_t svadrh[_u32base]_[u32]index(svuint32_t bases, svuint32_t indices)
682
+ /// ADR Zresult.S, [Zbases.S, Zindices.S, LSL #1]
683
+ /// </summary>
684
+ public static unsafe Vector < uint > Compute16BitAddresses ( Vector < uint > bases , Vector < uint > indices ) => Compute16BitAddresses ( bases , indices ) ;
685
+
686
+ /// <summary>
687
+ /// svuint64_t svadrh[_u64base]_[s64]index(svuint64_t bases, svint64_t indices)
688
+ /// ADR Zresult.D, [Zbases.D, Zindices.D, LSL #1]
689
+ /// </summary>
690
+ public static unsafe Vector < ulong > Compute16BitAddresses ( Vector < ulong > bases , Vector < long > indices ) => Compute16BitAddresses ( bases , indices ) ;
691
+
692
+ /// <summary>
693
+ /// svuint64_t svadrh[_u64base]_[u64]index(svuint64_t bases, svuint64_t indices)
694
+ /// ADR Zresult.D, [Zbases.D, Zindices.D, LSL #1]
695
+ /// </summary>
696
+ public static unsafe Vector < ulong > Compute16BitAddresses ( Vector < ulong > bases , Vector < ulong > indices ) => Compute16BitAddresses ( bases , indices ) ;
697
+
698
+
699
+ /// Compute vector addresses for 32-bit data
700
+
701
+ /// <summary>
702
+ /// svuint32_t svadrw[_u32base]_[s32]index(svuint32_t bases, svint32_t indices)
703
+ /// ADR Zresult.S, [Zbases.S, Zindices.S, LSL #2]
704
+ /// </summary>
705
+ public static unsafe Vector < uint > Compute32BitAddresses ( Vector < uint > bases , Vector < int > indices ) => Compute32BitAddresses ( bases , indices ) ;
706
+
707
+ /// <summary>
708
+ /// svuint32_t svadrw[_u32base]_[u32]index(svuint32_t bases, svuint32_t indices)
709
+ /// ADR Zresult.S, [Zbases.S, Zindices.S, LSL #2]
710
+ /// </summary>
711
+ public static unsafe Vector < uint > Compute32BitAddresses ( Vector < uint > bases , Vector < uint > indices ) => Compute32BitAddresses ( bases , indices ) ;
712
+
713
+ /// <summary>
714
+ /// svuint64_t svadrw[_u64base]_[s64]index(svuint64_t bases, svint64_t indices)
715
+ /// ADR Zresult.D, [Zbases.D, Zindices.D, LSL #2]
716
+ /// </summary>
717
+ public static unsafe Vector < ulong > Compute32BitAddresses ( Vector < ulong > bases , Vector < long > indices ) => Compute32BitAddresses ( bases , indices ) ;
718
+
719
+ /// <summary>
720
+ /// svuint64_t svadrw[_u64base]_[u64]index(svuint64_t bases, svuint64_t indices)
721
+ /// ADR Zresult.D, [Zbases.D, Zindices.D, LSL #2]
722
+ /// </summary>
723
+ public static unsafe Vector < ulong > Compute32BitAddresses ( Vector < ulong > bases , Vector < ulong > indices ) => Compute32BitAddresses ( bases , indices ) ;
724
+
725
+
726
+ /// Compute vector addresses for 64-bit data
727
+
728
+ /// <summary>
729
+ /// svuint32_t svadrd[_u32base]_[s32]index(svuint32_t bases, svint32_t indices)
730
+ /// ADR Zresult.S, [Zbases.S, Zindices.S, LSL #3]
731
+ /// </summary>
732
+ public static unsafe Vector < uint > Compute64BitAddresses ( Vector < uint > bases , Vector < int > indices ) => Compute64BitAddresses ( bases , indices ) ;
733
+
734
+ /// <summary>
735
+ /// svuint32_t svadrd[_u32base]_[u32]index(svuint32_t bases, svuint32_t indices)
736
+ /// ADR Zresult.S, [Zbases.S, Zindices.S, LSL #3]
737
+ /// </summary>
738
+ public static unsafe Vector < uint > Compute64BitAddresses ( Vector < uint > bases , Vector < uint > indices ) => Compute64BitAddresses ( bases , indices ) ;
739
+
740
+ /// <summary>
741
+ /// svuint64_t svadrd[_u64base]_[s64]index(svuint64_t bases, svint64_t indices)
742
+ /// ADR Zresult.D, [Zbases.D, Zindices.D, LSL #3]
743
+ /// </summary>
744
+ public static unsafe Vector < ulong > Compute64BitAddresses ( Vector < ulong > bases , Vector < long > indices ) => Compute64BitAddresses ( bases , indices ) ;
745
+
746
+ /// <summary>
747
+ /// svuint64_t svadrd[_u64base]_[u64]index(svuint64_t bases, svuint64_t indices)
748
+ /// ADR Zresult.D, [Zbases.D, Zindices.D, LSL #3]
749
+ /// </summary>
750
+ public static unsafe Vector < ulong > Compute64BitAddresses ( Vector < ulong > bases , Vector < ulong > indices ) => Compute64BitAddresses ( bases , indices ) ;
751
+
752
+
753
+ /// Compute vector addresses for 8-bit data
754
+
755
+ /// <summary>
756
+ /// svuint32_t svadrb[_u32base]_[s32]offset(svuint32_t bases, svint32_t offsets)
757
+ /// ADR Zresult.S, [Zbases.S, Zoffsets.S]
758
+ /// </summary>
759
+ public static unsafe Vector < uint > Compute8BitAddresses ( Vector < uint > bases , Vector < int > indices ) => Compute8BitAddresses ( bases , indices ) ;
760
+
761
+ /// <summary>
762
+ /// svuint32_t svadrb[_u32base]_[u32]offset(svuint32_t bases, svuint32_t offsets)
763
+ /// ADR Zresult.S, [Zbases.S, Zoffsets.S]
764
+ /// </summary>
765
+ public static unsafe Vector < uint > Compute8BitAddresses ( Vector < uint > bases , Vector < uint > indices ) => Compute8BitAddresses ( bases , indices ) ;
766
+
767
+ /// <summary>
768
+ /// svuint64_t svadrb[_u64base]_[s64]offset(svuint64_t bases, svint64_t offsets)
769
+ /// ADR Zresult.D, [Zbases.D, Zoffsets.D]
770
+ /// </summary>
771
+ public static unsafe Vector < ulong > Compute8BitAddresses ( Vector < ulong > bases , Vector < long > indices ) => Compute8BitAddresses ( bases , indices ) ;
772
+
773
+ /// <summary>
774
+ /// svuint64_t svadrb[_u64base]_[u64]offset(svuint64_t bases, svuint64_t offsets)
775
+ /// ADR Zresult.D, [Zbases.D, Zoffsets.D]
776
+ /// </summary>
777
+ public static unsafe Vector < ulong > Compute8BitAddresses ( Vector < ulong > bases , Vector < ulong > indices ) => Compute8BitAddresses ( bases , indices ) ;
672
778
673
779
/// Shuffle active elements of vector to the right and fill with zero
674
780
0 commit comments