| 948 | |
| 949 | #ifndef VMUL4S |
| 950 | static inline float *VMUL4S(float *dst, const float *v, unsigned idx, |
| 951 | unsigned sign, const float *scale) |
| 952 | { |
| 953 | unsigned nz = idx >> 12; |
| 954 | union float754 s = { .f = *scale }; |
| 955 | union float754 t; |
| 956 | |
| 957 | t.i = s.i ^ (sign & 1<<31); |
| 958 | *dst++ = v[idx & 3] * t.f; |
| 959 | |
| 960 | sign <<= nz & 1; nz >>= 1; |
| 961 | t.i = s.i ^ (sign & 1<<31); |
| 962 | *dst++ = v[idx>>2 & 3] * t.f; |
| 963 | |
| 964 | sign <<= nz & 1; nz >>= 1; |
| 965 | t.i = s.i ^ (sign & 1<<31); |
| 966 | *dst++ = v[idx>>4 & 3] * t.f; |
| 967 | |
| 968 | sign <<= nz & 1; nz >>= 1; |
| 969 | t.i = s.i ^ (sign & 1<<31); |
| 970 | *dst++ = v[idx>>6 & 3] * t.f; |
| 971 | |
| 972 | return dst; |
| 973 | } |
| 974 | #endif |
| 975 | |
| 976 | /** |
no outgoing calls
no test coverage detected