Loading lib_com/basop_util.c +16 −3 Original line number Diff line number Diff line Loading @@ -370,7 +370,11 @@ static Word32 Sqrt32_common(Word32 m, if (m != 0) { BASOP_SATURATE_WARNING_OFF_EVS; #ifdef BASOP_NOGLOB m = L_mac_sat( SqrtTable[index], SqrtDiffTable[index], frac ); #else m = L_mac( SqrtTable[index], SqrtDiffTable[index], frac ); #endif BASOP_SATURATE_WARNING_ON_EVS; } Loading Loading @@ -654,8 +658,13 @@ void BASOP_Util_Sqrt_InvSqrt_MantExp(Word16 mantissa, /*!< mantissa */ /* interpolate */ BASOP_SATURATE_WARNING_OFF_EVS; #ifdef BASOP_NOGLOB m = mac_r_sat( SqrtTable[index], SqrtDiffTable[index], frac ); mi = msu_r_sat(ISqrtTable[index], ISqrtDiffTable[index], frac); #else m = mac_r( SqrtTable[index], SqrtDiffTable[index], frac ); mi = msu_r(ISqrtTable[index], ISqrtDiffTable[index], frac); #endif BASOP_SATURATE_WARNING_ON_EVS; /* handle even/odd exponents */ Loading Loading @@ -2035,7 +2044,11 @@ Word16 BASOP_Util_Cmp_Mant32Exp /*!< o: flag: result of compari } BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB diff_m = L_sub_sat( a_m, b_m ); #else diff_m = L_sub( a_m, b_m ); #endif BASOP_SATURATE_WARNING_ON_EVS diff_e = sub(a_e, b_e); Loading lib_com/cldfb_evs.c +6 −1 Original line number Diff line number Diff line Loading @@ -1417,8 +1417,13 @@ GetEnergyCldfb( Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead) | p sm = sub(s_min(s, 44), 1); BASOP_SATURATE_WARNING_OFF_EVS /* nrg + 6.1e-5f => value 0x40000000, scale 44 */ #ifdef BASOP_NOGLOB *energyLookahead = L_add_sat( L_shr_sat( nrg, sub( s, sm ) ), L_shr_sat(0x40000000, s_max(-31, s_min(31, sub(44, sm))))); #else *energyLookahead = L_add( L_shr( nrg, sub( s, sm ) ), L_shr(0x40000000, s_max(-31, s_min(31, sub(44, sm))))); #endif move32(); BASOP_SATURATE_WARNING_ON_EVS *sf_energyLookahead = sm; Loading lib_com/codec_tcx_common.c +5 −1 Original line number Diff line number Diff line Loading @@ -41,7 +41,11 @@ Word16 tcxGetNoiseFillingTilt( Copy_Scale_sig(A, As, lpcorder + 1, sub(norm_s(A[0]),2)); tmp = get_gain(As + 1, As, lpcorder); BASOP_SATURATE_WARNING_OFF_EVS; #ifdef BASOP_NOGLOB *noiseTiltFactor = add_sat( round_fx_sat( L_shl_sat( tmp, 15 ) ), 3072 /*0.09375f Q15*/ ); #else *noiseTiltFactor = add( round_fx( L_shl( tmp, 15 ) ), 3072 /*0.09375f Q15*/ ); #endif move16(); BASOP_SATURATE_WARNING_ON_EVS; } Loading lib_com/est_tilt_fx.c +23 −5 Original line number Diff line number Diff line Loading @@ -70,8 +70,13 @@ Word16 est_tilt_fx( /* o : tilt of the code Q15 * i = sub(exp1, exp2); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB ener1 = shr_sat( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr_sat(ener2, add(s_max(0, i), 1)); #else ener1 = shr( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr(ener2, add(s_max(0, i), 1)); #endif BASOP_SATURATE_WARNING_ON_EVS tmp = sub(ener1, ener2); ener1 = add(add(ener1, ener2), 1); Loading Loading @@ -155,8 +160,13 @@ Word16 est_tilt_ivas_fx( /* o : tilt of the code Q15 i = sub(exp1, exp2); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB ener1 = shr_sat( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr_sat(ener2, add(s_max(0, i), 1)); #else ener1 = shr( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr(ener2, add(s_max(0, i), 1)); #endif BASOP_SATURATE_WARNING_ON_EVS tmp = sub(ener1, ener2); ener1 = add(add(ener1, ener2), 1); Loading Loading @@ -331,13 +341,21 @@ void E_UTIL_voice_factor( Word16 *exc, /* i : pointer to the excitatio IF(i >= 0) { ener = L_shr(ener,1); #ifdef BASOP_NOGLOB tmp = L_shr_sat( tmp, add( 1, i ) ); #else tmp = L_shr( tmp, add( 1, i ) ); #endif } ELSE { tmp = L_shr(tmp,1); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB ener = L_shr_sat( ener, sub( 1, i ) ); #else ener = L_shr( ener, sub( 1, i ) ); #endif BASOP_SATURATE_WARNING_ON_EVS } Loading lib_com/lpc_tools_fx.c +6 −1 Original line number Diff line number Diff line Loading @@ -1404,8 +1404,13 @@ void E_LPC_a_lsf_isf_conversion(Word16 *lpcCoeffs, Word16 *lsf, const Word16 * Word16 ImAr = extract_h(L_sub(ImagFFT[i], ImagFFT[N/2-i])); Word16 ImBr = extract_h((L_negate(L_add(ImagFFT[i], ImagFFT[N/2-i])))); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB tmpw15.v.re = mac_r_sat( L_mult( ptwiddle->v.im, pwn17->v.re ), ptwiddle->v.re, pwn17->v.im ); tmpw15.v.im = msu_r_sat(L_mult(ptwiddle->v.im, pwn17->v.im), ptwiddle->v.re, pwn17->v.re); #else tmpw15.v.re = mac_r( L_mult( ptwiddle->v.im, pwn17->v.re ), ptwiddle->v.re, pwn17->v.im ); tmpw15.v.im = msu_r(L_mult(ptwiddle->v.im, pwn17->v.im), ptwiddle->v.re, pwn17->v.re); #endif BASOP_SATURATE_WARNING_ON_EVS RealOut[i] = msu_r(L_msu(L_msu(L_mult(ReAr, pwn17->v.re), ImAr, pwn17->v.im), ReBr, pwn15->v.im), ImBr, pwn15->v.re); move16(); Loading Loading
lib_com/basop_util.c +16 −3 Original line number Diff line number Diff line Loading @@ -370,7 +370,11 @@ static Word32 Sqrt32_common(Word32 m, if (m != 0) { BASOP_SATURATE_WARNING_OFF_EVS; #ifdef BASOP_NOGLOB m = L_mac_sat( SqrtTable[index], SqrtDiffTable[index], frac ); #else m = L_mac( SqrtTable[index], SqrtDiffTable[index], frac ); #endif BASOP_SATURATE_WARNING_ON_EVS; } Loading Loading @@ -654,8 +658,13 @@ void BASOP_Util_Sqrt_InvSqrt_MantExp(Word16 mantissa, /*!< mantissa */ /* interpolate */ BASOP_SATURATE_WARNING_OFF_EVS; #ifdef BASOP_NOGLOB m = mac_r_sat( SqrtTable[index], SqrtDiffTable[index], frac ); mi = msu_r_sat(ISqrtTable[index], ISqrtDiffTable[index], frac); #else m = mac_r( SqrtTable[index], SqrtDiffTable[index], frac ); mi = msu_r(ISqrtTable[index], ISqrtDiffTable[index], frac); #endif BASOP_SATURATE_WARNING_ON_EVS; /* handle even/odd exponents */ Loading Loading @@ -2035,7 +2044,11 @@ Word16 BASOP_Util_Cmp_Mant32Exp /*!< o: flag: result of compari } BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB diff_m = L_sub_sat( a_m, b_m ); #else diff_m = L_sub( a_m, b_m ); #endif BASOP_SATURATE_WARNING_ON_EVS diff_e = sub(a_e, b_e); Loading
lib_com/cldfb_evs.c +6 −1 Original line number Diff line number Diff line Loading @@ -1417,8 +1417,13 @@ GetEnergyCldfb( Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead) | p sm = sub(s_min(s, 44), 1); BASOP_SATURATE_WARNING_OFF_EVS /* nrg + 6.1e-5f => value 0x40000000, scale 44 */ #ifdef BASOP_NOGLOB *energyLookahead = L_add_sat( L_shr_sat( nrg, sub( s, sm ) ), L_shr_sat(0x40000000, s_max(-31, s_min(31, sub(44, sm))))); #else *energyLookahead = L_add( L_shr( nrg, sub( s, sm ) ), L_shr(0x40000000, s_max(-31, s_min(31, sub(44, sm))))); #endif move32(); BASOP_SATURATE_WARNING_ON_EVS *sf_energyLookahead = sm; Loading
lib_com/codec_tcx_common.c +5 −1 Original line number Diff line number Diff line Loading @@ -41,7 +41,11 @@ Word16 tcxGetNoiseFillingTilt( Copy_Scale_sig(A, As, lpcorder + 1, sub(norm_s(A[0]),2)); tmp = get_gain(As + 1, As, lpcorder); BASOP_SATURATE_WARNING_OFF_EVS; #ifdef BASOP_NOGLOB *noiseTiltFactor = add_sat( round_fx_sat( L_shl_sat( tmp, 15 ) ), 3072 /*0.09375f Q15*/ ); #else *noiseTiltFactor = add( round_fx( L_shl( tmp, 15 ) ), 3072 /*0.09375f Q15*/ ); #endif move16(); BASOP_SATURATE_WARNING_ON_EVS; } Loading
lib_com/est_tilt_fx.c +23 −5 Original line number Diff line number Diff line Loading @@ -70,8 +70,13 @@ Word16 est_tilt_fx( /* o : tilt of the code Q15 * i = sub(exp1, exp2); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB ener1 = shr_sat( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr_sat(ener2, add(s_max(0, i), 1)); #else ener1 = shr( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr(ener2, add(s_max(0, i), 1)); #endif BASOP_SATURATE_WARNING_ON_EVS tmp = sub(ener1, ener2); ener1 = add(add(ener1, ener2), 1); Loading Loading @@ -155,8 +160,13 @@ Word16 est_tilt_ivas_fx( /* o : tilt of the code Q15 i = sub(exp1, exp2); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB ener1 = shr_sat( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr_sat(ener2, add(s_max(0, i), 1)); #else ener1 = shr( ener1, sub( 1, s_min( i, 0 ) ) ); ener2 = shr(ener2, add(s_max(0, i), 1)); #endif BASOP_SATURATE_WARNING_ON_EVS tmp = sub(ener1, ener2); ener1 = add(add(ener1, ener2), 1); Loading Loading @@ -331,13 +341,21 @@ void E_UTIL_voice_factor( Word16 *exc, /* i : pointer to the excitatio IF(i >= 0) { ener = L_shr(ener,1); #ifdef BASOP_NOGLOB tmp = L_shr_sat( tmp, add( 1, i ) ); #else tmp = L_shr( tmp, add( 1, i ) ); #endif } ELSE { tmp = L_shr(tmp,1); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB ener = L_shr_sat( ener, sub( 1, i ) ); #else ener = L_shr( ener, sub( 1, i ) ); #endif BASOP_SATURATE_WARNING_ON_EVS } Loading
lib_com/lpc_tools_fx.c +6 −1 Original line number Diff line number Diff line Loading @@ -1404,8 +1404,13 @@ void E_LPC_a_lsf_isf_conversion(Word16 *lpcCoeffs, Word16 *lsf, const Word16 * Word16 ImAr = extract_h(L_sub(ImagFFT[i], ImagFFT[N/2-i])); Word16 ImBr = extract_h((L_negate(L_add(ImagFFT[i], ImagFFT[N/2-i])))); BASOP_SATURATE_WARNING_OFF_EVS #ifdef BASOP_NOGLOB tmpw15.v.re = mac_r_sat( L_mult( ptwiddle->v.im, pwn17->v.re ), ptwiddle->v.re, pwn17->v.im ); tmpw15.v.im = msu_r_sat(L_mult(ptwiddle->v.im, pwn17->v.im), ptwiddle->v.re, pwn17->v.re); #else tmpw15.v.re = mac_r( L_mult( ptwiddle->v.im, pwn17->v.re ), ptwiddle->v.re, pwn17->v.im ); tmpw15.v.im = msu_r(L_mult(ptwiddle->v.im, pwn17->v.im), ptwiddle->v.re, pwn17->v.re); #endif BASOP_SATURATE_WARNING_ON_EVS RealOut[i] = msu_r(L_msu(L_msu(L_mult(ReAr, pwn17->v.re), ImAr, pwn17->v.im), ReBr, pwn15->v.im), ImBr, pwn15->v.re); move16(); Loading