Loading lib_com/swb_tbe_com_fx.c +4 −31 Original line number Diff line number Diff line Loading @@ -7295,23 +7295,13 @@ void synthesise_fb_high_band_fx( *prev_fbbwe_ratio = shr( ratio, 1 ); move16(); } #define FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST tmp3 = add( sub( Qout, add( sub( 1, exp ), exp_tmp ) ), 16 ); /*Qout - (1 -exp +exp_tmp) + 16 */ FOR( i = 0; i < L_FRAME48k; i++ ) { L_tmp = Mult_32_16( ratio2, tmp[i] ); /* Q(16-exp+exp_tmp-15 = 1-exp+exp_tmp) */ #ifdef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx L_tmp = Mult_32_16( ratio2, tmp[i] ); /* Q(16-exp+exp_tmp-15 = 1-exp+exp_tmp) */ Word32 L_tmp32; Word16 tmp16; #ifdef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST Word32 L_tmp_a[5] = { 0x80000000, 0xC0000000, 0, 0x40000000, 0x7FFFFFFF}; Word16 tmp3_a[15] = { -35, -32, -31, -15, -3, -1, 0, 1, 3, 15, 31, 32, 35 }; for (int i_lta = 0; i_lta < 5; i_lta++) for ( int i_t3a = 0; i_t3a < 13; i_t3a++ ) { L_tmp = L_tmp_a[i_lta]; tmp3 = tmp3_a[i_t3a]; #endif if ( L_tmp < 0 ) { Loading Loading @@ -7344,29 +7334,12 @@ void synthesise_fb_high_band_fx( { tmp16 = extract_h( L_tmp32 ); } #ifndef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST output[i] = tmp16; move16(); #else IF( L_tmp < 0 ) { output[i] = negate( extract_h( L_shl_sat( L_negate( L_tmp ), tmp3 ) ) ); /*Qout*/ move16(); } ELSE { output[i] = extract_h( L_shl_sat( L_tmp, tmp3 ) ); /*Qout*/ move16(); } if ( output[i] != tmp16 ) assert( 0 ); #endif #ifdef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST } #endif #else L_tmp = Mult_32_16( ratio2, tmp[i] ); /* Q(16-exp+exp_tmp-15 = 1-exp+exp_tmp) */ IF( L_tmp < 0 ) { output[i] = negate( extract_h( L_shl_sat( L_negate( L_tmp ), tmp3 ) ) ); /*Qout*/ Loading Loading
lib_com/swb_tbe_com_fx.c +4 −31 Original line number Diff line number Diff line Loading @@ -7295,23 +7295,13 @@ void synthesise_fb_high_band_fx( *prev_fbbwe_ratio = shr( ratio, 1 ); move16(); } #define FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST tmp3 = add( sub( Qout, add( sub( 1, exp ), exp_tmp ) ), 16 ); /*Qout - (1 -exp +exp_tmp) + 16 */ FOR( i = 0; i < L_FRAME48k; i++ ) { L_tmp = Mult_32_16( ratio2, tmp[i] ); /* Q(16-exp+exp_tmp-15 = 1-exp+exp_tmp) */ #ifdef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx L_tmp = Mult_32_16( ratio2, tmp[i] ); /* Q(16-exp+exp_tmp-15 = 1-exp+exp_tmp) */ Word32 L_tmp32; Word16 tmp16; #ifdef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST Word32 L_tmp_a[5] = { 0x80000000, 0xC0000000, 0, 0x40000000, 0x7FFFFFFF}; Word16 tmp3_a[15] = { -35, -32, -31, -15, -3, -1, 0, 1, 3, 15, 31, 32, 35 }; for (int i_lta = 0; i_lta < 5; i_lta++) for ( int i_t3a = 0; i_t3a < 13; i_t3a++ ) { L_tmp = L_tmp_a[i_lta]; tmp3 = tmp3_a[i_t3a]; #endif if ( L_tmp < 0 ) { Loading Loading @@ -7344,29 +7334,12 @@ void synthesise_fb_high_band_fx( { tmp16 = extract_h( L_tmp32 ); } #ifndef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST output[i] = tmp16; move16(); #else IF( L_tmp < 0 ) { output[i] = negate( extract_h( L_shl_sat( L_negate( L_tmp ), tmp3 ) ) ); /*Qout*/ move16(); } ELSE { output[i] = extract_h( L_shl_sat( L_tmp, tmp3 ) ); /*Qout*/ move16(); } if ( output[i] != tmp16 ) assert( 0 ); #endif #ifdef FIX_1439_SPEEDUP_synthesise_fb_high_band_fx_TEST } #endif #else L_tmp = Mult_32_16( ratio2, tmp[i] ); /* Q(16-exp+exp_tmp-15 = 1-exp+exp_tmp) */ IF( L_tmp < 0 ) { output[i] = negate( extract_h( L_shl_sat( L_negate( L_tmp ), tmp3 ) ) ); /*Qout*/ Loading