Commit 9fe45837 authored by Fabian Bauer's avatar Fabian Bauer
Browse files

ivas_dirac_dec_binaural_functions.c :

- added some more optimizations: FIX_1072_REPLACE_DIV_SQRT_BY_ISQRT and FIX1072_SPEEDUP_formulate2x2MixingMatrix_fx_reduceDivs
- moved some optimizations into another macro wrapping, added some move32 instrumentations
- added FIX1072_SPEEDUP_chol2x2_fx
- speedup formulate2x2MixingMatrix_fx
- added matrixMul_func1 and reduced mhz further
- no big testing, only output check of 1 bitstream

basop_utils.c:
- added macro BASOP_Util_Divide3232_Scale_cadence_REPLACEMENT speeds up decoder massively, no big changes at least in one tested bitstream

--- deactivate all optimizations for testing
parent bfde9510
Loading
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -1037,6 +1037,23 @@ Word32 div_w( Word32 L_num, Word32 L_den )
    }
}

/* Replace BASOP_Util_Divide3232_Scale_cadence() with simplified function which calculates an approximation */
//#define BASOP_Util_Divide3232_Scale_cadence_REPLACEMENT

#ifdef BASOP_Util_Divide3232_Scale_cadence_REPLACEMENT
Word32 BASOP_Util_Divide3232_Scale_cadence_REPLACEMENT( Word32 x, Word32 y, Word16 *s )
{
    Word16 exp = 0;
    Word32 tmp32 = ISqrt32( y, &exp );
    tmp32 = Mpy_32_32( tmp32, tmp32 );
    exp = imult1616( 2, exp );
    tmp32 = Mpy_32_32( tmp32, x );

    *s = exp;
    return tmp32;
}
#endif /*BASOP_Util_Divide3232_Scale_cadence_REPLACEMENT*/

Word32 BASOP_Util_Divide3232_Scale_cadence( Word32 x, Word32 y, Word16 *s )
{
    Word32 z;
+313 −370

File changed.

Preview size limit exceeded, changes collapsed.