Commit 236ae528 authored by Fabian Bauer's avatar Fabian Bauer
Browse files

make it even faster

parent 01d6efd2
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -77,7 +77,7 @@
#define FIX_1942_ASSERTION_LOWSHELF                          /* FhG: Modified the target_gains_db_fx calculation in compute_t60_coeffs_fx() */
#define FIX_1944_CRASH_FOR_STEREO                            /* FhG: improve TonalMDCTConceal_InsertNoise calculation precision */
#define FIX_1970_SBA_CRASH                                   /* Dlb: Fix for issue 1970, SBA crash */
#define FIX_1981_MAXIMUM_EXP_FX                              /* FhG: Fix bug in function to find maximum value in vector */
//#define FIX_1981_MAXIMUM_EXP_FX                              /* FhG: Fix bug in function to find maximum value in vector */

#define FIX_1946_CRASH_JBM_PROCESSING                        /* FhG: Increased guard bits of DFT_fx */
/* #################### Start BASOP porting switches ############################ */
+5 −4
Original line number Diff line number Diff line
@@ -1221,22 +1221,23 @@ Word16 maximum_exp_fx( /* o : index of the maximum value
)
{
    Word16 j, ind;
#ifndef FIX_1981_MAXIMUM_EXP_FX
    Word16 tmp, exp;
    ind = 0;
    move16();
#ifndef FIX_1981_MAXIMUM_EXP_FX
    tmp = vec_fx[0];
    move16();
    exp = exp_vec[0];
    move16();
#else
    ind = 0;
    move16();
#endif

    FOR( j = 1; j < lvec_fx; j++ )
    {
#ifdef FIX_1981_MAXIMUM_EXP_FX
        exp = sub(norm_s( vec_fx[j] ), 1);
        tmp = shl( vec_fx[j], exp );
        if( LT_16( vec_fx[ind], shr_sat( tmp, sub( exp_vec[ind], sub(exp_vec[j], exp) ) ) ) )
        if( LE_16( vec_fx[ind], shr_sat( vec_fx[j], sub( exp_vec[ind], exp_vec[j] ) ) ) )
        {
            ind = j;
            move16();