MCPcopy Create free account
hub / github.com/numpy/numpy / npyv_cmpgt_s64

Function npyv_cmpgt_s64

numpy/core/src/common/simd/sse/operators.h:174–182  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

172 #define npyv_cmpgt_s64 _mm_cmpgt_epi64
173#else
174 NPY_FINLINE __m128i npyv_cmpgt_s64(__m128i a, __m128i b)
175 {
176 __m128i sub = _mm_sub_epi64(b, a);
177 __m128i nsame_sbit = _mm_xor_si128(a, b);
178 // nsame_sbit ? b : sub
179 __m128i test = _mm_xor_si128(sub, _mm_and_si128(_mm_xor_si128(sub, b), nsame_sbit));
180 __m128i extend_sbit = _mm_shuffle_epi32(_mm_srai_epi32(test, 31), _MM_SHUFFLE(3, 3, 1, 1));
181 return extend_sbit;
182 }
183#endif
184
185// signed greater than or equal

Callers 4

npyv_max_s64Function · 0.85
npyv_cmpgt_u64Function · 0.85
npyv_max_s64Function · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected