24 constexpr T sqrt_helper(T x, T lo, T hi) {
28 const T mid = (lo + hi + 1) / 2;
31 return sqrt_helper<T>(x, lo, mid - 1);
33 return sqrt_helper(x, mid, hi);
46requires std::integral<T>
48 return Impl::sqrt_helper<T>(x, 0, x / 2 + 1);
Definition: assemblermanipulatorbuildingblocks.hh:22
constexpr T ct_sqrt(T x)
Compile-time square root for integer types.
Definition: math.hh:47