void ArtfulTest(int testCount) {
const double kSeam = 0x1.0p-27;
double xDown = kSeam, xUp = kSeam;
for (int i = 0; i < testCount; i++) {
xDown = NextAfter(xDown, -kInfinity);
ArcTanhTest(xDown); // compare Sample... with SlowButSure...
xUp = NextAfter(xUp, +kInfinity);
ArcTanhTest(xUp);
}
}
double signSaver = CopySign(1.0, value); value = Abs(value); // synonymous with CopySign(value, 1.0) double powerOfTwo = Logb(value); double significand = Scalb(value, (long) -powerOfTwo);