Commit 3a0cffad authored by Fabian Bauer's avatar Fabian Bauer Committed by Manuel Jander
Browse files

add modified version of division '1/x'

parent 69673ab7
Loading
Loading
Loading
Loading
+35 −0
Original line number Diff line number Diff line
@@ -1066,6 +1066,41 @@ Word32 BASOP_Util_Divide3232_Scale_cadence( Word32 x, Word32 y, Word16 *s )
    return z;
}

/*1bit HR in x > 0*/
Word32 BASOP_Util_Divide3232_Scale_cadence_1( Word32 x, Word32 y, Word16 *s )
{
    Word32 z;
    //Word16 sx;
    Word16 sy;
    Word32 sign;

    /* assert (x >= (Word32)0); */
    assert( y != (Word32) 0 );

    sign = 0;
    move16();

    IF( y < 0 )
    {
        y = L_negate( y );
        sign = L_xor( sign, 1 );
    }

    sy = norm_l( y );
    y = L_shl( y, sy );
    move16();
    *s = add( 0, sy );
    move16();

    z = div_w( x, y );

    if ( sign != 0 )
    {
        z = L_negate( z );
    }
    return z;

}
Word16 BASOP_Util_Divide3232_Scale( Word32 x, Word32 y, Word16 *s )
{
    Word16 z;
+4 −0
Original line number Diff line number Diff line
@@ -332,6 +332,10 @@ Word32 BASOP_Util_Divide3232_Scale_cadence( Word32 x, /*!< i : Numerator*/
                                            Word32 y,    /*!< i  : Denominator*/
                                            Word16 *s ); /*!< o  : Additional scalefactor difference*/

Word32 BASOP_Util_Divide3232_Scale_cadence_1( Word32 x,    /*!< i  : Numerator*/
                                            Word32 y,    /*!< i  : Denominator*/

                                            Word16 *s ); /*!< o  : Additional scalefactor difference*/

/************************************************************************/
/*!