| 2097 | // multiply bigint by scalar value. |
| 2098 | template <uint16_t size> |
| 2099 | inline FASTFLOAT_CONSTEXPR20 |
| 2100 | bool small_mul(stackvec<size>& vec, limb y) noexcept { |
| 2101 | limb carry = 0; |
| 2102 | for (size_t index = 0; index < vec.len(); index++) { |
| 2103 | vec[index] = scalar_mul(vec[index], y, carry); |
| 2104 | } |
| 2105 | if (carry != 0) { |
| 2106 | FASTFLOAT_TRY(vec.try_push(carry)); |
| 2107 | } |
| 2108 | return true; |
| 2109 | } |
| 2110 | |
| 2111 | // add bigint to bigint starting from index. |
| 2112 | // used in grade school multiplication |