Loading lib_enc/fd_cng_enc_fx.c +13 −18 Original line number Diff line number Diff line Loading @@ -1318,16 +1318,10 @@ Word16 cng_energy_ivas_fx( const Word16 *pt_res; Word32 L_ener, L_tmp; #ifdef HARMONIZE_2539_cng_energy Word64 W_ener; IF( EQ_16( element_mode, EVS_MONO ) ) Word64 W_ener = W_shr( W_deposit32_h( 1 ), 1 ); if ( EQ_16( element_mode, EVS_MONO ) ) { W_ener = W_shr( W_neg( W_deposit32_h( 1 ) ), 1 ); move64(); } ELSE { W_ener = W_shr( W_deposit32_h( 1 ), 1 ); move64(); W_ener = W_neg( W_ener ); } #endif Loading @@ -1347,12 +1341,14 @@ Word16 cng_energy_ivas_fx( IF( EQ_16( element_mode, EVS_MONO ) ) { scale_tmp = scale; move16(); scale_tmp32 = L_shr( 0x40000000, 7 - 1 ); } ELSE { scale_tmp = sub( scale, 4 ); scale_tmp32 = 0x80000000; move32(); } #endif Loading @@ -1371,7 +1367,7 @@ Word16 cng_energy_ivas_fx( } ELSE { L_tmp = L_mac0( L_tmp, tmp16, tmp16 ); L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 ); } pt_res++; W_ener = W_msu0_32_32( W_ener, L_tmp, scale_tmp32 ); /* 2*(Q_new+scale)+1, divide by L_frame done here */ Loading Loading @@ -1410,19 +1406,18 @@ Word16 cng_energy_ivas_fx( } } #ifdef HARMONIZE_2539_cng_energy IF( EQ_16( element_mode, EVS_MONO ) ) L_ener = L_shl( W_extract_h( W_ener ), 1 ); if ( EQ_16( element_mode, EVS_MONO ) ) { L_ener = L_shl( L_negate( W_extract_h( W_ener ) ), 1 ); L_ener = L_negate( L_ener ); } ELSE { L_ener = L_shl( W_extract_h( W_ener ), 1 ); if ( NE_16( len, L_FRAME ) ) test(); if ( GT_16( element_mode, EVS_MONO ) && NE_16( len, L_FRAME ) ) { L_ener = L_shl( L_ener, 1 ); } } #endif hi = norm_l( L_ener ); lo = Log2_norm_lc( L_shl( L_ener, hi ) ); hi = sub( 30, add( hi, shl( add( Q_new, scale ), 1 ) ) ); /* log2 exp in Q2*(Q_new+scale) */ Loading Loading
lib_enc/fd_cng_enc_fx.c +13 −18 Original line number Diff line number Diff line Loading @@ -1318,16 +1318,10 @@ Word16 cng_energy_ivas_fx( const Word16 *pt_res; Word32 L_ener, L_tmp; #ifdef HARMONIZE_2539_cng_energy Word64 W_ener; IF( EQ_16( element_mode, EVS_MONO ) ) Word64 W_ener = W_shr( W_deposit32_h( 1 ), 1 ); if ( EQ_16( element_mode, EVS_MONO ) ) { W_ener = W_shr( W_neg( W_deposit32_h( 1 ) ), 1 ); move64(); } ELSE { W_ener = W_shr( W_deposit32_h( 1 ), 1 ); move64(); W_ener = W_neg( W_ener ); } #endif Loading @@ -1347,12 +1341,14 @@ Word16 cng_energy_ivas_fx( IF( EQ_16( element_mode, EVS_MONO ) ) { scale_tmp = scale; move16(); scale_tmp32 = L_shr( 0x40000000, 7 - 1 ); } ELSE { scale_tmp = sub( scale, 4 ); scale_tmp32 = 0x80000000; move32(); } #endif Loading @@ -1371,7 +1367,7 @@ Word16 cng_energy_ivas_fx( } ELSE { L_tmp = L_mac0( L_tmp, tmp16, tmp16 ); L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 ); } pt_res++; W_ener = W_msu0_32_32( W_ener, L_tmp, scale_tmp32 ); /* 2*(Q_new+scale)+1, divide by L_frame done here */ Loading Loading @@ -1410,19 +1406,18 @@ Word16 cng_energy_ivas_fx( } } #ifdef HARMONIZE_2539_cng_energy IF( EQ_16( element_mode, EVS_MONO ) ) L_ener = L_shl( W_extract_h( W_ener ), 1 ); if ( EQ_16( element_mode, EVS_MONO ) ) { L_ener = L_shl( L_negate( W_extract_h( W_ener ) ), 1 ); L_ener = L_negate( L_ener ); } ELSE { L_ener = L_shl( W_extract_h( W_ener ), 1 ); if ( NE_16( len, L_FRAME ) ) test(); if ( GT_16( element_mode, EVS_MONO ) && NE_16( len, L_FRAME ) ) { L_ener = L_shl( L_ener, 1 ); } } #endif hi = norm_l( L_ener ); lo = Log2_norm_lc( L_shl( L_ener, hi ) ); hi = sub( 30, add( hi, shl( add( Q_new, scale ), 1 ) ) ); /* log2 exp in Q2*(Q_new+scale) */ Loading