square
{ unsigned long long square = (unsigned long long)a * a; \
Plo = (mp_digit)square; \
Phi = (mp_digit)(square >> MP_DIGIT_BIT); }
dt_sqrt_128(uint64_t *square)
bit_pairs = dt_nbits_128(square) / 2;
next_pair[0] = square[0];
next_pair[1] = square[1];
TEST(0, square(2));
TEST(0, square(argc));
TEST(0, ({square(y--); 0; }));
TEST(0, (square(x), 3));