| 987 | } |
| 988 | |
| 989 | inline vec_float VecSelect(const vec_float& v1, const vec_float& v2, const vec_float& mask) |
| 990 | { |
| 991 | #if defined(TERATHON_SSE) |
| 992 | |
| 993 | return (_mm_or_ps(_mm_andnot_ps(mask, v1), _mm_and_ps(mask, v2))); |
| 994 | |
| 995 | #elif defined(TERATHON_NEON) |
| 996 | |
| 997 | return (vbslq_f32(vreinterpretq_u32_f32(mask), v2, v1)); |
| 998 | |
| 999 | #endif |
| 1000 | } |
| 1001 | |
| 1002 | inline vec_float VecMaskCmpeq(const vec_float& v1, const vec_float& v2) |
| 1003 | { |
nothing calls this directly
no outgoing calls
no test coverage detected