예제 #1
0
 public static ushort2 addsub(ushort2 a, ushort2 b)
 {
     if (Ssse3.IsSsse3Supported)
     {
         return(a + Ssse3.sign_epi16(b, new ushort2(1, ushort.MaxValue)));
     }
     else
     {
         return(a + select(b, (ushort2)(-(short2)b), new bool2(false, true)));
     }
 }
예제 #2
0
파일: Sign.cs 프로젝트: csritter/MaxMath
 public static short8 sign(short8 x)
 {
     if (Ssse3.IsSsse3Supported)
     {
         return(Ssse3.sign_epi16(new short8(1), x));
     }
     else
     {
         return((x >> 15) | (short8)((ushort8)(-x) >> 15));
     }
 }