Commit 5c087909 authored by JÜRGEN Gerstacker's avatar JÜRGEN Gerstacker
Browse files

issue _1965_ fix

parent ee292634
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -81,7 +81,7 @@
#define FIX_1917_DIRAC_RENDER_PTR_INCR                       /* FhG: fix wrong pointer increment in ivas_dirac_dec_render_sf_fx() for object rendering */
#define FIX_CDLFB_BUFFER_SCALING                             /* FhG: fix wrong buffer scaling in ivas_dirac_dec_render_sf_fx() for object rendering */
#define FIX_ISSUE_1817_REPLACE_CARRY_OVERFLOW                /* FhG: bit-exact, replace carry and overflow operations by 64-bit operations, MR 1931 */
#define FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW                /* FhG: bit-exact, replace carry and overflow operations by 64-bit operations, MR 1931 */
#define FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW                /* FhG: bit-exact, replace carry and overflow operations by 64-bit operations, MR 2166 */
#define	NONBE_SVD_OPTIMIZATION                               /* FhG: reduce WMOPS of HouseHolderReduction() in ivas_svd_dec.c() by removing redundant mathematics and using 64 bit additions */
#define FIX_1766_TCX2ACELP_BWE_ISSUE                         /* VA : Fix rare BWE issue when switching from TCX to ACELP */
#define FIX_1781_SPECTRAL_GAPS                               /* FhG: Change internal calculation of tcx_noise_factor_ivas_fx() to 32-bit*/
+7 −1
Original line number Diff line number Diff line
@@ -29,9 +29,11 @@ static Word16 tcx_arith_decode_fx(
    Word16 tmp;
    Word32 L_tmp, Q;
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOWxxx
    Flag Overflow = 0;
    move32();
    Flag Carry = 0;
    Flag Carry = 0; //not done
#endif
    move32();
#endif

@@ -63,7 +65,11 @@ static Word16 tcx_arith_decode_fx(
        {
            bp = ari_decode_14bits_sign_fx( prm, bp, target_bits, &s, &as );

#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOWxxx
            L_tmp = L_macNs_co( L_tmp, q, k, &Carry, &Overflow );
#else
            L_tmp = L_macNs_sat( L_tmp, q, k );
#endif

            Q = L_mult( q, negate( shl( 1, sub( 30, SPEC_EXP_DEC ) ) ) );
            IF( EQ_16( s, 0 ) )
+6 −0
Original line number Diff line number Diff line
@@ -702,10 +702,12 @@ void tcx_arith_encode_envelope_fx(
    Word16 tmp;
    TCX_ENC_HANDLE hTcxEnc = st->hTcxEnc;
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
    Flag Overflow = 0;
    Flag Carry = 0;
    move32();
    move32();
#endif
#endif

    assert( L_spec <= N_MAX_ARI );
@@ -793,7 +795,11 @@ void tcx_arith_encode_envelope_fx(
    L_tmp2 = L_deposit_l( 0 );
    FOR( k = 0; k <= kMax; k++ )
    {
#ifndef FIX_ISSUE_1965_REPLACE_CARRY_OVERFLOW
        L_tmp2 = L_macNs_co( L_tmp2, q_spectrum[k], k, &Carry, &Overflow );
#else
        L_tmp2 = L_macNs_sat( L_tmp2, q_spectrum[k], k );
#endif

        if ( signs[k] != 0 )
            L_tmp = L_mult( q_spectrum[k], -( 1 << ( 30 - SPEC_EXP_DEC ) ) );