Commit bd1617b7 authored by Nicolas Roussin's avatar Nicolas Roussin
Browse files

Debug fx32.

parent 52dee0c4
Loading
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -183,7 +183,6 @@ void ivas_filters_init_fx(
}

#ifdef OPT_2239_IVAS_FILTER_PROCESS
static void ivas_iir_2_filter_fx32( ivas_filters_process_state_t *filter_state, Word32 *pIn_Out_fx, const Word16 length, const Word16 stage, Word16 q );
static void ivas_iir_2_filter_fx64( ivas_filters_process_state_t *filter_state, Word64 *pIn_Out_fx, const Word16 length, const Word16 stage, Word16 q );
static Word64 Mpy_64_32( Word64 W_var1, Word32 L_var2 );

@@ -217,6 +216,7 @@ static Word64 Mpy_64_32( Word64 W_var1, Word32 L_var2 )
 * Process call for filtering a signal
 *-----------------------------------------------------------------------------------------*/
#if 0
static void ivas_iir_2_filter_fx32( ivas_filters_process_state_t *filter_state, Word32 *pIn_Out_fx, const Word16 length, const Word16 stage, Word16 q );
static void ivas_iir_2_filter_fx32(
    ivas_filters_process_state_t *filter_state,
    Word32 *pIn_Out_fx,
@@ -233,21 +233,21 @@ static void ivas_iir_2_filter_fx32(
        in = pIn_Out_fx[i];
        move32();

        shift = sub( filter_state->num_q[stage][0], 32 );
        tmp_prod = W_shr( W_mult0_32_32( filter_state->num_fx[stage][0], in ), shift );
        shift = sub( filter_state->num_q[stage][0], 31 ); // (num_q + q + 1) - (q + 32)
        tmp_prod = W_shr( W_mult_32_32( filter_state->num_fx[stage][0], in ), shift );

        pIn_Out_fx[i] = out = W_extract_h( W_add( filter_state->state64_fx[stage][0], tmp_prod ) );
        move32();

        FOR( j = 1; j < filter_state->filt_len; j++ )
        {
            shift = sub( filter_state->num_q[stage][j], 32 );
            tmp_prod = W_shr( W_mult0_32_32( filter_state->num_fx[stage][j], in ), shift );
            shift = sub( filter_state->num_q[stage][j], 31 );
            tmp_prod = W_shr( W_mult_32_32( filter_state->num_fx[stage][j], in ), shift );

            tmp = W_add( filter_state->state64_fx[stage][j], tmp_prod );

            shift = sub( filter_state->den_q[stage][j], 32 );
            tmp_prod = W_shr( W_mult0_32_32( filter_state->den_fx[stage][j], out ), shift );
            shift = sub( filter_state->den_q[stage][j], 31 );
            tmp_prod = W_shr( W_mult_32_32( filter_state->den_fx[stage][j], out ), shift );

            filter_state->state64_fx[stage][j - 1] = W_sub( tmp, tmp_prod );
            move32();
@@ -311,7 +311,7 @@ static void ivas_iir_2_filter_fx64(
        in = pIn_Out_fx[i];
        move32();

        shift = sub( filter_state->num_q[stage][0], 31 );
        shift = sub( filter_state->num_q[stage][0], 31 ); // (q + numq - 31) - q
        tmp_prod = W_shr( Mpy_64_32( in, filter_state->num_fx[stage][0] ), shift );

        pIn_Out_fx[i] = out = W_add( filter_state->state64_fx[stage][0], tmp_prod );