Commit 6052bce8 authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Merge branch 'switch_div32_newton_part03' into 'main'

lib_com: replace BASOP_Util_Divide3232_Scale_cadence() by BASOP_Util_Divide3232_Scale_newton() [allow regression]

See merge request !1412
parents df05785a 2434c3f7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1034,7 +1034,7 @@ void computeDiffuseness_fixed(
        exp1 = sub( 31, q_intensity_slow );
        tmp = Sqrt32( p_tmp[i], &exp1 );

        tmp = BASOP_Util_Divide3232_Scale_cadence( tmp, L_add( energy_slow[i], EPSILLON_FX ), &exp2 );
        tmp = BASOP_Util_Divide3232_Scale_newton( tmp, L_add( energy_slow[i], EPSILLON_FX ), &exp2 );
        q_tmp = add( sub( 31, exp2 ), sub( sub( 31, exp1 ), q_ene ) );

        IF( LT_16( q_tmp, Q30 ) )
+3 −3
Original line number Diff line number Diff line
@@ -314,9 +314,9 @@ Word16 quantize_phi_enc_fx(
    Word32 temp_res;
    Word16 temp_e;

    delta_phi_fx = BASOP_Util_Divide3232_Scale_cadence( 360, n, &temp_e );
    delta_phi_fx = BASOP_Util_Divide3232_Scale_newton( 360, n, &temp_e );
    delta_phi_fx = L_shl( delta_phi_fx, sub( temp_e, 9 ) );
    inv_delta_phi_fx = BASOP_Util_Divide3232_Scale_cadence( n, 360, &temp_e );
    inv_delta_phi_fx = BASOP_Util_Divide3232_Scale_newton( n, 360, &temp_e );

    IF( EQ_16( n, 1 ) )
    {
@@ -661,7 +661,7 @@ Word16 quantize_phi_chan_compand_fx(

    /* quantize companded value */
    // delta_phi = 360.0f / (float) n;
    delta_phi = BASOP_Util_Divide3232_Scale_cadence( 360, n, &tmp_e );
    delta_phi = BASOP_Util_Divide3232_Scale_newton( 360, n, &tmp_e );
    delta_phi = L_shr( delta_phi, sub( 9, tmp_e ) ); // Q22
    // id_phi = (int16_t) round_f( ( phi / (float) delta_phi ) );
    id_phi = BASOP_Util_Divide3232_Scale( phi, delta_phi, &tmp_e ); // Q15
+2 −2
Original line number Diff line number Diff line
@@ -985,7 +985,7 @@ static void ivas_get_pred_coeffs_enc_fx(
                move32();
                dm_g_q[b] = Q29;
                move16();
                DM_F[b] = BASOP_Util_Divide3232_Scale_cadence( Mpy_32_32( dm_g[b], num_f ), den_f, &s_dm_f ); // Q=(31-(s_dm_f+2+num_f_e-den_f_e))
                DM_F[b] = BASOP_Util_Divide3232_Scale_newton( Mpy_32_32( dm_g[b], num_f ), den_f, &s_dm_f ); // Q=(31-(s_dm_f+2+num_f_e-den_f_e))
                move32();
                DM_F_q[b] = sub( 31, add( s_dm_f, sub( add( 2, num_f_e ), den_f_e ) ) );
                move16();
@@ -1514,7 +1514,7 @@ static void ivas_get_pred_coeffs_fx(
                den_f = L_max( den_f, 1 );     // Q=31-den_f_e
                dm_g[b] = activew_quad_thresh; // Q29
                move32();
                DM_F[b] = BASOP_Util_Divide3232_Scale_cadence( Mpy_32_32( dm_g[b], num_f ), den_f, &s_dm_f ); // s_dm_f+2+num_f_e-den_f_e
                DM_F[b] = BASOP_Util_Divide3232_Scale_newton( Mpy_32_32( dm_g[b], num_f ), den_f, &s_dm_f ); // s_dm_f+2+num_f_e-den_f_e
                move32();
                s_dm_f = add( s_dm_f, sub( add( 2, num_f_e ), den_f_e ) ); /*Resultant exp for DM_F s_dm_f +( 2 + num_f_e ) - den_f_e*/
                div_shift = sub( s_dm_f, 1 );
+1 −1
Original line number Diff line number Diff line
@@ -353,7 +353,7 @@ static Word32 ivas_calc_duck_gain_fx(
        test();
        IF( ( env_1 != 0 ) && ( env_2 != 0 ) )
        {
            L_tmp = BASOP_Util_Divide3232_Scale_cadence( env_1, env_2, &tmp_e );
            L_tmp = BASOP_Util_Divide3232_Scale_newton( env_1, env_2, &tmp_e );
            L_tmp = L_shl( L_tmp, add( sub( env1_e, env2_e ), tmp_e ) );

            duck_gain_out = Mpy_32_32( duck_mult_fac, L_tmp ); /*Q29*/