@@ -787,23 +787,21 @@ size_t intn_bnot(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sig
787787
788788size_t intn_bsl (const intn_digit_t num [], size_t len , size_t n , intn_digit_t * out )
789789{
790- size_t digit_bit_size = sizeof (uint32_t ) * 8 ;
791-
792790 size_t digit_left_bit_shift = n % 32 ;
793791 size_t right_shift_n = (32 - digit_left_bit_shift );
794792
795793 size_t counted_digits = intn_count_digits (num , len );
796794 size_t ms_digit_bits = 32 - uint32_nlz (num [counted_digits - 1 ]);
797- size_t effective_bits_len = (counted_digits - 1 ) * digit_bit_size + ms_digit_bits ;
798- size_t new_bits_len = size_align_up_pow2 (effective_bits_len + n , digit_bit_size );
795+ size_t effective_bits_len = (counted_digits - 1 ) * INTN_DIGIT_BITS + ms_digit_bits ;
796+ size_t new_bits_len = size_align_up_pow2 (effective_bits_len + n , INTN_DIGIT_BITS );
799797
800- size_t new_digits_count = new_bits_len / digit_bit_size ;
798+ size_t new_digits_count = new_bits_len / INTN_DIGIT_BITS ;
801799
802800 if (new_digits_count > INTN_BSL_MAX_RES_LEN ) {
803801 return new_digits_count ;
804802 }
805803
806- size_t initial_zeros = MIN (n / digit_bit_size , INTN_BSL_MAX_RES_LEN );
804+ size_t initial_zeros = MIN (n / INTN_DIGIT_BITS , INTN_BSL_MAX_RES_LEN );
807805 memset (out , 0 , initial_zeros * sizeof (uint32_t ));
808806
809807 if (right_shift_n == 32 ) {
@@ -833,15 +831,14 @@ size_t intn_bsl(const intn_digit_t num[], size_t len, size_t n, intn_digit_t *ou
833831void bsru (
834832 const uint32_t num [], size_t effective_bits_len , size_t n , uint32_t last_digit , uint32_t * out )
835833{
836- size_t digit_bit_size = sizeof (uint32_t ) * 8 ; // 32
837-
838- size_t digit_right_bit_shift = n % digit_bit_size ;
839- size_t left_shift_n = (digit_bit_size - digit_right_bit_shift );
834+ size_t digit_right_bit_shift = n % INTN_DIGIT_BITS ;
835+ size_t left_shift_n = (INTN_DIGIT_BITS - digit_right_bit_shift );
840836
841- size_t len_in_digits = size_align_up_pow2 (effective_bits_len , digit_bit_size ) / digit_bit_size ;
837+ size_t len_in_digits
838+ = size_align_up_pow2 (effective_bits_len , INTN_DIGIT_BITS ) / INTN_DIGIT_BITS ;
842839
843840 // caller makes sure that discarded < len_in_digits
844- size_t discarded = n / digit_bit_size ;
841+ size_t discarded = n / INTN_DIGIT_BITS ;
845842
846843 if (left_shift_n == 32 ) {
847844 memcpy (out , num + discarded , (len_in_digits - discarded ) * sizeof (uint32_t ));
@@ -864,18 +861,17 @@ void bsru(
864861size_t intn_bsr (
865862 const intn_digit_t num [], size_t len , intn_integer_sign_t num_sign , size_t n , intn_digit_t * out )
866863{
867- size_t digit_bit_size = sizeof (uint32_t ) * 8 ;
868864 size_t counted_digits = intn_count_digits (num , len );
869865 size_t ms_digit_bits = 32 - uint32_nlz (num [counted_digits - 1 ]);
870- size_t effective_bits_len = (counted_digits - 1 ) * digit_bit_size + ms_digit_bits ;
866+ size_t effective_bits_len = (counted_digits - 1 ) * INTN_DIGIT_BITS + ms_digit_bits ;
871867
872868 if (n >= effective_bits_len ) {
873869 out [0 ] = (num_sign == IntNPositiveInteger ) ? 0 : 1 ;
874870 return 1 ;
875871 }
876872
877873 size_t shifted_len
878- = size_align_up_pow2 (effective_bits_len - n , digit_bit_size ) / digit_bit_size ;
874+ = size_align_up_pow2 (effective_bits_len - n , INTN_DIGIT_BITS ) / INTN_DIGIT_BITS ;
879875
880876 if (num_sign == IntNPositiveInteger ) {
881877 bsru (num , effective_bits_len , n , 0 , out );
0 commit comments