ref/include/f11_260.c
// Approximately divide each coefficient by t. Carry the results.
Approximately divide each coefficient by t. Carry the results.
Approximately divide each coefficient by t . Carry the results .
void reduce_step_wide(
  residue_wide_t *result, const residue_wide_t *x) {
  int64_t carries[NLIMBS];
  for (int i = 0; i < NLIMBS; ++i) {
    carries[i] = x->limbs[i] >> TBITS;
    result->limbs[i] = (x->limbs[i] & TMASK) +
      (carries[i] << T_CBITS) - carries[i];
  }
  for (int i = 1; i < NLIMBS; ++i) {
    result->limbs[i] += carries[i - 1];
  }
  result->limbs[0] += carries[NLIMBS - 1];
}
void reduce_step_wide ( residue_wide_t * result , const residue_wide_t * x ) { int64_t carries [ NLIMBS ] ; for ( int i = 0 ; i < NLIMBS ; ++ i ) { carries [ i ] = x -> limbs [ i ] >> TBITS ; result -> limbs [ i ] = ( x -> limbs [ i ] & TMASK ) + ( carries [ i ] << T_CBITS ) - carries [ i ] ; } for ( int i = 1 ; i < NLIMBS ; ++ i ) { result -> limbs [ i ] += carries [ i - 1 ] ; } result -> limbs [ 0 ] += carries [ NLIMBS - 1 ] ; }
Approximately divide each coefficient by t. Carry the results.
Approximately divide each coefficient by t . Carry the results .