Commit 625364d8 authored by JÜRGEN Gerstacker's avatar JÜRGEN Gerstacker
Browse files

ISSUE_1811_EXCEEDING_W_SHIFTS, W_shl() shift limited to 63

parent 1e77697e
Loading
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -229,7 +229,11 @@ static void sincResample_fx(
        /* Calculate the sinc-index for the center value of the sinc */
        Word16 center_val_e;
        Word64 center_val;
#ifndef FIX_ISSUE_1811_EXCEEDING_W_SHIFTS
        center_val = W_sub( t_frac_plus_eps, W_shl( t, sub( 31, t_frac_plus_eps_e ) ) ); // exp(center_val_e)
#else
        center_val = W_sub( t_frac_plus_eps, W_shl( t, s_min( sub( 31, t_frac_plus_eps_e ), 63 ) ) ); // exp(center_val_e)
#endif
        center_val_e = add( t_frac_plus_eps_e, 6 );
        Word16 com_e = s_max( 0, center_val_e );
        center_val = W_add( W_shr( center_val, sub( com_e, center_val_e ) ), W_shl( 1, sub( 30, com_e ) ) ); // exp(center_val_e)