Commit e7acabe3 authored by Fabian Bauer's avatar Fabian Bauer
Browse files

add some more push/pop wmops points

parent a657a846
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -48,7 +48,7 @@
#include "wmc_auto.h"

//#define FIX1072_SPEEDUP_formulate2x2MixingMatrix_fx_simple
#define FIX1072_SPEEDUP_formulate2x2MixingMatrix_fx_reduceDivs
#define FIX1072_SPEEDUP_formulate2x2MixingMatrix_fx_reduceDivs //orange tests

//#define FIX1072_SPEEDUP_chol2x2_fx

@@ -58,7 +58,7 @@
//#define FIX_1072_SPEEDUP_matrixTransp2Mul_fx_reducetest

/*16 Mhz*/
#define FIX_1072_REPLACE_DIV_SQRT_BY_ISQRT
#define FIX_1072_REPLACE_DIV_SQRT_BY_ISQRT //testing...
//#define FIX_1072_REDUCE_DIVS

#ifndef FIX_1072_REPLACE_DIV_SQRT_BY_ISQRT
@@ -4494,6 +4494,7 @@ static void formulate2x2MixingMatrix_fx(
    Word16 hdrm_re[BINAURAL_CHANNELS][BINAURAL_CHANNELS], hdrm_im[BINAURAL_CHANNELS][BINAURAL_CHANNELS];

    push_wmops( "IDDB_detProcMat_bigLoop1_2x2Matrix" );
    push_wmops( "IDDB_2x2Matrix_Part1" );

#ifdef FIX1072_SPEEDUP_formulate2x2MixingMatrix_fx_simple
#else
@@ -4605,6 +4606,9 @@ static void formulate2x2MixingMatrix_fx(
    Cout_im = Mpy_32_32( Cout_im, maxEneDiv_fx );
    q_cout = sub( add( q_cout, q_maxEneDiv ), 31 );

    pop_wmops(); //( "IDDB_2x2Matrix_Part1" );
    push_wmops( "IDDB_2x2Matrix_Part2" );

    /* Cholesky decomposition of target / output covariance matrix */
    chol2x2_fx( E_out1, E_out2, q_eout, Cout_re, Cout_im, q_cout, KyRe_fx, KyIm_fx, &q_ky );

@@ -4977,6 +4981,9 @@ static void formulate2x2MixingMatrix_fx(
#endif
                         Pre_fx, Pim_fx, &q_P ); /* Nearest orthonormal matrix P to matrix A formulated */

    pop_wmops(); //( "IDDB_2x2Matrix_Part2" );
    push_wmops( "IDDB_2x2Matrix_Part3" );

    /* These are the final formulas of the JAES publication M = Ky P Kx^(-1) */
    FOR( chA = 0; chA < BINAURAL_CHANNELS; chA++ )
    {
@@ -5058,7 +5065,7 @@ static void formulate2x2MixingMatrix_fx(
                         0 /*int Bscale*/,
#endif
                         Mre_fx, Mim_fx, q_M );

    pop_wmops(); //push_wmops( "IDDB_2x2Matrix_Part3" );
    pop_wmops(); /*IDDB_detProcMat_bigLoop1_2x2Matrix*/
    return;
}