Commit ba9026ab authored by vaclav's avatar vaclav
Browse files

fix

parent cb17b506
Loading
Loading
Loading
Loading
Loading
+31 −14
Original line number Diff line number Diff line
@@ -768,23 +768,27 @@ Word16 getScaleFactor32_cmplx(
    const Word16 len_x /* i: length of the array to scan  */
)
{
    Word16 i, i_min, i_max;
    Word32 x_min, x_max;
    Word16 i, i_min, i_max, i_re, i_im;
    Word32 x_min_re, x_max_re, x_min_im, x_max_im;

    x_max = 0;
    x_max_re = 0;
    move32();
    x_min = 0;
    x_min_re = 0;
    move32();
    x_max_im = 0;
    move32();
    x_min_im = 0;
    move32();
    FOR( i = 0; i < len_x; i++ )
    {
        if ( x[i].re >= 0 )
            x_max = L_max( x_max, x[i].re );
            x_max_re = L_max( x_max_re, x[i].re );
        if ( x[i].re < 0 )
            x_min = L_min( x_min, x[i].re );
            x_min_re = L_min( x_min_re, x[i].re );
        if ( x[i].im >= 0 )
            x_max = L_max( x_max, x[i].im );
            x_max_im = L_max( x_max_im, x[i].im );
        if ( x[i].im < 0 )
            x_min = L_min( x_min, x[i].im );
            x_min_im = L_min( x_min_im, x[i].im );
    }

    i_max = 0x20;
@@ -792,15 +796,28 @@ Word16 getScaleFactor32_cmplx(
    i_min = 0x20;
    move16();

    if ( x_max != 0 )
        i_max = norm_l( x_max );
    if ( x_max_re != 0 )
        i_max = norm_l( x_max_re );

    if ( x_min != 0 )
        i_min = norm_l( x_min );
    if ( x_min_re != 0 )
        i_min = norm_l( x_min_re );

    i = s_and( s_min( i_max, i_min ), 0x1F );
    i_re = s_and( s_min( i_max, i_min ), 0x1F );

    return i;
    i_max = 0x20;
    move16();
    i_min = 0x20;
    move16();

    if ( x_max_im != 0 )
        i_max = norm_l( x_max_im );

    if ( x_min_im != 0 )
        i_min = norm_l( x_min_im );

    i_im = s_and( s_min( i_max, i_min ), 0x1F );

    return s_min(i_re, i_im);
}
#endif