| 881 | } |
| 882 | |
| 883 | inline vec_float VecDivScalar(const vec_float& v1, const vec_float& v2) |
| 884 | { |
| 885 | #if defined(TERATHON_SSE) |
| 886 | |
| 887 | return (_mm_div_ss(v1, v2)); |
| 888 | |
| 889 | #elif defined(TERATHON_NEON) |
| 890 | |
| 891 | vec_float f = vrecpeq_f32(v2); |
| 892 | f = vmulq_f32(f, vrecpsq_f32(v2, f)); |
| 893 | return (vmulq_f32(v1, f)); |
| 894 | |
| 895 | #endif |
| 896 | } |
| 897 | |
| 898 | inline vec_float VecAnd(const vec_float& v1, const vec_float& v2) |
| 899 | { |