spx_word32_t rr = -SHL(ac[i + 1],13);
spx_word32_t rr = NEG32(SHL32(EXTEND32(ac[i + 1]),13));
spx_word32_t _spx_lpc(spx_coef_t       *lpc, /* out: [0...p-1] LPC coefficients      */const spx_word16_t *ac,  /* in:  [0...p] autocorrelation values  */int          p){   int i, j;     spx_word16_t r;   spx_word16_t error = ac[0];   if (ac[0] == 0)   {      for (i = 0; i < p; i++)         lpc[i] = 0;      return 0;   }   for (i = 0; i < p; i++) {      /* Sum up this iteration's reflection coefficient */      spx_word32_t rr = -SHL(ac[i + 1],13);      for (j = 0; j < i; j++)          rr = SUB32(rr,MULT16_16(lpc[j],ac[i - j]));#ifdef FIXED_POINT      r = DIV32_16(rr,ADD16(error,16));#else      r = rr/(error+.003*ac[0]);#endif      /*  Update LPC coefficients and total error */      lpc[i] = r;      for (j = 0; j < i>>1; j++)       {         spx_word16_t tmp  = lpc[j];         lpc[j]     = MAC16_16_Q13(lpc[j],r,lpc[i-1-j]);         lpc[i-1-j] = MAC16_16_Q13(lpc[i-1-j],r,tmp);      }      if (i & 1)          lpc[j] = MAC16_16_Q13(lpc[j],lpc[j],r);      error = SUB16(error,MULT16_16_Q13(r,MULT16_16_Q13(error,r)));   }   return error;}