Commit bc5f594a authored by vaillancour's avatar vaillancour
Browse files

Fixes IO conditions

parent 660308c2
Loading
Loading
Loading
Loading
+23 −9
Original line number Diff line number Diff line
@@ -1264,13 +1264,21 @@ static void fft5_32_16fx(
    move16();
    T6 = zIm[i3];
    move16();
#ifdef BASOP_NOGLOB
    T7 = add_sat(T5,T6);
    Te = sub_sat(T2,T3);
    Tp = add_sat(T4,T7);
    Th = sub_sat(T5,T6);
    L_tmp = Mult_32_16(KP559016994_16FX,sub_sat(T4,T7));
    Tn = round_fx_sat(L_tmp);
#else
    T7 = add(T5,T6);
    Te = sub(T2,T3);
    Tp = add(T4,T7);
    Th = sub(T5,T6);
    L_tmp = Mult_32_16(KP559016994_16FX,sub(T4,T7));
    Tn = round_fx(L_tmp);

#endif


#ifdef BASOP_NOGLOB
@@ -1328,21 +1336,27 @@ static void fft5_32_16fx(
    /*                T3 = KP951056516 * Tt - KP587785252 * Ts; */
    L_tmp = Mult_32_16(KP951056516_16FX,Tt);
    L_tmp = Msub_32_16(L_tmp,KP587785252_16FX,Ts);
    T3 = round_fx(L_tmp);

    T6 = sub(To,shr(Tp,2));
    T4 = add(Tn,T6);
    T5 = sub(T6,Tn);
#ifdef BASOP_NOGLOB
    zIm[i2] = sub_o(T4,T2, &Overflow);
    T3 = round_fx_sat(L_tmp);

    T6 = sub_sat(To, shr(Tp, 2));
    T4 = add_sat(Tn, T6);
    T5 = sub_sat(T6, Tn);
    zIm[i2] = sub_sat(T4,T2);
    move16();
    zIm[i1] = sub_o(T5,T3, &Overflow);
    zIm[i1] = sub_sat(T5,T3);
    move16();
    zIm[i3] = add_o(T2,T4, &Overflow);
    zIm[i3] = add_sat(T2,T4);
    move16();
    zIm[i4] = add_o(T3,T5, &Overflow);
    zIm[i4] = add_sat(T3,T5);
    move16();
#else
    T3 = round_fx(L_tmp);

    T6 = sub(To, shr(Tp, 2));
    T4 = add(Tn, T6);
    T5 = sub(T6, Tn);
    zIm[i2] = sub(T4,T2);
    move16();
    zIm[i1] = sub(T5,T3);
+8 −6
Original line number Diff line number Diff line
@@ -1840,9 +1840,7 @@ void hq_wb_nf_bwe_fx(
    Word16 tmp;
    Word32 L_tmp;
    Word32 mean_fx;
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
    Flag Overflow = 0;
#endif

    IF( is_transient == 0 )
    {
        IF( EQ_16(prev_bfi, 1))
@@ -1867,7 +1865,7 @@ void hq_wb_nf_bwe_fx(
            tmp = div_s(16384,tmp);/*Q(15+14-exp) */
            L_tmp = L_mult(tmp, bitalloc_var_fx); /*Q(29-exp+1) */
#ifdef BASOP_NOGLOB
            bitalloc_var_fx = round_fx_o(L_shl_o(L_tmp,exp, &Overflow), &Overflow);/*Q14 */
            bitalloc_var_fx = round_fx_sat(L_shl_sat(L_tmp,exp));/*Q14 */
#else
            bitalloc_var_fx = round_fx(L_shl(L_tmp,exp));/*Q14 */
#endif
@@ -1883,7 +1881,11 @@ void hq_wb_nf_bwe_fx(
        {
            tmp = shl(sfmsize[sfm], 9);/*Q9 */
            tmp = mult( rat_fx[sfm],tmp );/*Q(14+9-15=8) */
#ifdef BASOP_NOGLOB
            IF(GE_16(shl_sat(R[sfm],8),tmp))
#else
            IF(GE_16(shl(R[sfm],8),tmp))
#endif
            {
                peak_fx = 0;
                move16();
@@ -1946,7 +1948,7 @@ void hq_wb_nf_bwe_fx(
        L_tmp = L_mult(5,sharp_fx);/*Q15 */
        L_tmp = Mult_32_16(L_tmp,tmp);/*Q15 */
#ifdef BASOP_NOGLOB
        step_fx = round_fx_o(L_shl_o(L_tmp,16, &Overflow), &Overflow);/*Q15  */
        step_fx = round_fx_sat(L_shl_sat(L_tmp,16));/*Q15  */
#else
        step_fx = round_fx(L_shl(L_tmp,16));/*Q15  */
#endif
@@ -2087,7 +2089,7 @@ void hq_wb_nf_bwe_fx(
                        }

#ifdef BASOP_NOGLOB
                        sharp_fx = add_o(sharp_fx,shr(step_fx,1), &Overflow);
                        sharp_fx = add_sat(sharp_fx,shr(step_fx,1));
#else
                        sharp_fx = add(sharp_fx,shr(step_fx,1));
#endif