mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Fix strtod rounding of half the least subnormal (bug 16151).
This commit is contained in:
@ -7535,6 +7535,294 @@ static const struct test tests[] = {
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L),
|
||||
TEST ("0x1p-150",
|
||||
false,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x8p-152f,
|
||||
true,
|
||||
0x4p-152,
|
||||
0x4p-152,
|
||||
0x4p-152,
|
||||
0x4p-152,
|
||||
true,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
true,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
true,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
true,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
true,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L,
|
||||
0x4p-152L),
|
||||
TEST ("0x1p-1075",
|
||||
false,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x8p-152f,
|
||||
false,
|
||||
0x0p+0,
|
||||
0x0p+0,
|
||||
0x0p+0,
|
||||
0x4p-1076,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-1076L,
|
||||
true,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
true,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-1076L,
|
||||
true,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L,
|
||||
0x2p-1076L),
|
||||
TEST ("0x1p-16446",
|
||||
false,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x8p-152f,
|
||||
false,
|
||||
0x0p+0,
|
||||
0x0p+0,
|
||||
0x0p+0,
|
||||
0x4p-1076,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-1076L,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x8p-16448L,
|
||||
true,
|
||||
0x4p-16448L,
|
||||
0x4p-16448L,
|
||||
0x4p-16448L,
|
||||
0x4p-16448L,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-1076L,
|
||||
true,
|
||||
0x4p-16448L,
|
||||
0x4p-16448L,
|
||||
0x4p-16448L,
|
||||
0x4p-16448L),
|
||||
TEST ("0x1p-16495",
|
||||
false,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x0p+0f,
|
||||
0x8p-152f,
|
||||
false,
|
||||
0x0p+0,
|
||||
0x0p+0,
|
||||
0x0p+0,
|
||||
0x4p-1076,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-1076L,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x8p-16448L,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-16448L,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-1076L,
|
||||
false,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x0p+0L,
|
||||
0x4p-16496L),
|
||||
TEST ("-0x1p-150",
|
||||
false,
|
||||
-0x8p-152f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
true,
|
||||
-0x4p-152,
|
||||
-0x4p-152,
|
||||
-0x4p-152,
|
||||
-0x4p-152,
|
||||
true,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
true,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
true,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
true,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
true,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L,
|
||||
-0x4p-152L),
|
||||
TEST ("-0x1p-1075",
|
||||
false,
|
||||
-0x8p-152f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
false,
|
||||
-0x4p-1076,
|
||||
-0x0p+0,
|
||||
-0x0p+0,
|
||||
-0x0p+0,
|
||||
false,
|
||||
-0x4p-1076L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
true,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
true,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
false,
|
||||
-0x4p-1076L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
true,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L,
|
||||
-0x2p-1076L),
|
||||
TEST ("-0x1p-16446",
|
||||
false,
|
||||
-0x8p-152f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
false,
|
||||
-0x4p-1076,
|
||||
-0x0p+0,
|
||||
-0x0p+0,
|
||||
-0x0p+0,
|
||||
false,
|
||||
-0x4p-1076L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
false,
|
||||
-0x8p-16448L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
true,
|
||||
-0x4p-16448L,
|
||||
-0x4p-16448L,
|
||||
-0x4p-16448L,
|
||||
-0x4p-16448L,
|
||||
false,
|
||||
-0x4p-1076L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
true,
|
||||
-0x4p-16448L,
|
||||
-0x4p-16448L,
|
||||
-0x4p-16448L,
|
||||
-0x4p-16448L),
|
||||
TEST ("-0x1p-16495",
|
||||
false,
|
||||
-0x8p-152f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
-0x0p+0f,
|
||||
false,
|
||||
-0x4p-1076,
|
||||
-0x0p+0,
|
||||
-0x0p+0,
|
||||
-0x0p+0,
|
||||
false,
|
||||
-0x4p-1076L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
false,
|
||||
-0x8p-16448L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
false,
|
||||
-0x4p-16448L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
false,
|
||||
-0x4p-1076L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
false,
|
||||
-0x4p-16496L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L,
|
||||
-0x0p+0L),
|
||||
};
|
||||
|
||||
static int
|
||||
|
Reference in New Issue
Block a user