20 long long acc = 0x7fff >> shift;
22 for (
int i = 0 ; i < len ; i++) {
23 acc += (int32_t)src1[i] * (int32_t)src2[i];
26 int final_shift = shift - 15;
27 if (final_shift > 0) {
28 *dest = (acc << final_shift);
30 *dest = (acc >> (-final_shift));
esp_err_t dsps_dotprod_s16_ansi(const int16_t *src1, const int16_t *src2, int16_t *dest, int len, int8_t shift)
dot product of two 16 bit vectors Dot product calculation for two signed 16 bit arrays: *dest += (src...