@@ -113,7 +113,7 @@ public static void Shuffle4Reduce(
113113 [ ConstantExpected ] byte control )
114114 {
115115 if ( ( Vector512 . IsHardwareAccelerated && Vector512_ . SupportsShuffleNativeByte ) ||
116- ( Vector256 . IsHardwareAccelerated && Vector256_ . SupportsShuffleByte ) ||
116+ ( Vector256 . IsHardwareAccelerated && Vector256_ . SupportsShuffleNativeByte ) ||
117117 ( Vector128 . IsHardwareAccelerated && Vector128_ . SupportsShuffleNativeByte ) )
118118 {
119119 int remainder = 0 ;
@@ -158,7 +158,7 @@ public static void Shuffle3Reduce(
158158 ref Span < byte > destination ,
159159 [ ConstantExpected ] byte control )
160160 {
161- if ( Vector128 . IsHardwareAccelerated && Vector128_ . SupportsShuffleNativeByte && Vector128_ . SupportsRightAlign )
161+ if ( Vector128 . IsHardwareAccelerated && Vector128_ . SupportsShuffleNativeByte && Vector128_ . SupportsAlignRight )
162162 {
163163 int remainder = source . Length % ( Vector128 < byte > . Count * 3 ) ;
164164
@@ -373,7 +373,7 @@ private static void Shuffle4(
373373 }
374374 }
375375 }
376- else if ( Vector256 . IsHardwareAccelerated && Vector256_ . SupportsShuffleByte )
376+ else if ( Vector256 . IsHardwareAccelerated && Vector256_ . SupportsShuffleNativeByte )
377377 {
378378 Span < byte > temp = stackalloc byte [ Vector256 < byte > . Count ] ;
379379 Shuffle . MMShuffleSpan ( ref temp , control ) ;
@@ -445,7 +445,9 @@ private static void Shuffle3(
445445 Span < byte > destination ,
446446 [ ConstantExpected ] byte control )
447447 {
448- if ( Vector128 . IsHardwareAccelerated && Vector128_ . SupportsShuffleNativeByte && Vector128_ . SupportsRightAlign )
448+ if ( Vector128 . IsHardwareAccelerated &&
449+ Vector128_ . SupportsShuffleNativeByte &&
450+ Vector128_ . SupportsAlignRight )
449451 {
450452 Vector128 < byte > maskPad4Nx16 = ShuffleMaskPad4Nx16 ( ) ;
451453 Vector128 < byte > maskSlice4Nx16 = ShuffleMaskSlice4Nx16 ( ) ;
@@ -505,7 +507,10 @@ private static void Pad3Shuffle4(
505507 Span < byte > destination ,
506508 [ ConstantExpected ] byte control )
507509 {
508- if ( Vector128 . IsHardwareAccelerated && Vector128_ . SupportsShuffleNativeByte && Vector128_ . SupportsShiftByte )
510+ if ( Vector128 . IsHardwareAccelerated &&
511+ Vector128_ . SupportsShuffleNativeByte &&
512+ Vector128_ . SupportsShiftByte &&
513+ Vector128_ . SupportsAlignRight )
509514 {
510515 Vector128 < byte > maskPad4Nx16 = ShuffleMaskPad4Nx16 ( ) ;
511516 Vector128 < byte > fill = Vector128 . Create ( 0xff000000ff000000ul ) . AsByte ( ) ;
@@ -548,7 +553,10 @@ private static void Shuffle4Slice3(
548553 Span < byte > destination ,
549554 [ ConstantExpected ] byte control )
550555 {
551- if ( Vector128 . IsHardwareAccelerated && Vector128_ . SupportsShuffleNativeByte && Vector128_ . SupportsShiftByte )
556+ if ( Vector128 . IsHardwareAccelerated &&
557+ Vector128_ . SupportsShuffleNativeByte &&
558+ Vector128_ . SupportsShiftByte &&
559+ Vector128_ . SupportsAlignRight )
552560 {
553561 Vector128 < byte > maskSlice4Nx16 = ShuffleMaskSlice4Nx16 ( ) ;
554562 Vector128 < byte > maskE = Vector128_ . AlignRight ( maskSlice4Nx16 , maskSlice4Nx16 , 12 ) ;
0 commit comments