| 27 | __m128i inline And(__m128i x, __m128i y) { return _mm_and_si128(x, y); } |
| 28 | __m128i inline ShR(__m128i x, int n) { return _mm_srli_epi32(x, n); } |
| 29 | __m128i inline ShL(__m128i x, int n) { return _mm_slli_epi32(x, n); } |
| 30 | |
| 31 | __m128i inline Ch(__m128i x, __m128i y, __m128i z) { return Xor(z, And(x, Xor(y, z))); } |
| 32 | __m128i inline Maj(__m128i x, __m128i y, __m128i z) { return Or(And(x, y), And(z, Or(x, y))); } |