From: Florian Krohm Date: Sun, 26 Oct 2025 21:45:32 +0000 (+0000) Subject: s390x: Enable "convert to logical" BFP test X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dffded0f2ecf487e197766b24cf56f47785768dc;p=thirdparty%2Fvalgrind.git s390x: Enable "convert to logical" BFP test This was disabled because I had thought that a negative operand value should result in a condition code of 1. Not so. Additionally the operand value must be 0 after rounding. --- diff --git a/none/tests/s390x/bfp-convert.c b/none/tests/s390x/bfp-convert.c index 1d0502e41..dbb5b53ad 100644 --- a/none/tests/s390x/bfp-convert.c +++ b/none/tests/s390x/bfp-convert.c @@ -179,9 +179,9 @@ m3_rtext(unsigned m3_round) { switch (m3_round) { case M3_BFP_ROUND_PER_FPC: return "[per fpc]"; - case M3_BFP_ROUND_NEAREST_AWAY: return "[-> near away]"; + case M3_BFP_ROUND_NEAREST_AWAY: return "[-> nearest with ties away from 0]"; case M3_BFP_ROUND_PREPARE_SHORT: return "[-> prepare-short]"; - case M3_BFP_ROUND_NEAREST_EVEN: return "[-> near away]"; + case M3_BFP_ROUND_NEAREST_EVEN: return "[-> nearest with ties to even]"; case M3_BFP_ROUND_ZERO: return "[-> zero]"; case M3_BFP_ROUND_POSINF: return "[-> +inf]"; case M3_BFP_ROUND_NEGINF: return "[-> -inf]"; @@ -191,7 +191,7 @@ m3_rtext(unsigned m3_round) /* Can be converted to 64-bit and 128-bit values without issues. */ static const float values[] = { - 0.0f, -1.0f, 2.0f, NAN, INFINITY + 0.0f, -0.25f, 2.0f, NAN, INFINITY }; static void @@ -230,7 +230,8 @@ convert_to_int_fpc_tests(unsigned mode) cgxbr(values[j], M3_BFP_ROUND_PER_FPC); } -#if 0 +/* Note: In order to get cc = 1 it is not sufficient for the operand value + to be < 0. Additionally, the operand value after rounding must be 0. */ static void convert_to_logical_fpc_tests(unsigned mode) { @@ -266,7 +267,6 @@ convert_to_logical_fpc_tests(unsigned mode) for (int j = 0; j < sizeof values / sizeof values[0]; ++j) clgxbr(values[j], M3_BFP_ROUND_PER_FPC); } -#endif int main(void) @@ -292,19 +292,16 @@ main(void) } printf("Rounding as 'per M3'\n"); - convert_to_int_m3_tests(1); // M3_BFP_ROUND_NEAREST_AWAY - convert_to_int_m3_tests(3); // M3_BFP_ROUND_PREPARE_SHORT - convert_to_int_m3_tests(4); // M3_BFP_ROUND_NEAREST_EVEN - convert_to_int_m3_tests(5); // M3_BFP_ROUND_ZERO - convert_to_int_m3_tests(6); // M3_BFP_ROUND_POSINF - convert_to_int_m3_tests(7); // M3_BFP_ROUND_NEGINF + convert_to_int_m3_tests(M3_BFP_ROUND_NEAREST_AWAY); + convert_to_int_m3_tests(M3_BFP_ROUND_PREPARE_SHORT); + convert_to_int_m3_tests(M3_BFP_ROUND_NEAREST_EVEN); + convert_to_int_m3_tests(M3_BFP_ROUND_ZERO); + convert_to_int_m3_tests(M3_BFP_ROUND_POSINF); + convert_to_int_m3_tests(M3_BFP_ROUND_NEGINF); //---------------------------------------------------------- // Convert to logical //---------------------------------------------------------- -#if 0 - /* Disabled until condition code weirdness has been cleared up. - Negative floating point number --> cc = 3. Seems wrong to me. */ putchar('\n'); printf("============ Convert to logical =============\n"); printf("Rounding as 'per FPC'\n"); @@ -314,12 +311,12 @@ main(void) } printf("Rounding as 'per M3'\n"); - convert_to_logical_m3_tests(1); // M3_BFP_ROUND_NEAREST_AWAY - convert_to_logical_m3_tests(3); // M3_BFP_ROUND_PREPARE_SHORT - convert_to_logical_m3_tests(4); // M3_BFP_ROUND_NEAREST_EVEN - convert_to_logical_m3_tests(5); // M3_BFP_ROUND_ZERO - convert_to_logical_m3_tests(6); // M3_BFP_ROUND_POSINF - convert_to_logical_m3_tests(7); // M3_BFP_ROUND_NEGINF -#endif + convert_to_logical_m3_tests(M3_BFP_ROUND_NEAREST_AWAY); + convert_to_logical_m3_tests(M3_BFP_ROUND_PREPARE_SHORT); + convert_to_logical_m3_tests(M3_BFP_ROUND_NEAREST_EVEN); + convert_to_logical_m3_tests(M3_BFP_ROUND_ZERO); + convert_to_logical_m3_tests(M3_BFP_ROUND_POSINF); + convert_to_logical_m3_tests(M3_BFP_ROUND_NEGINF); + return 0; } diff --git a/none/tests/s390x/bfp-convert.stdout.exp b/none/tests/s390x/bfp-convert.stdout.exp index c5a17ebd4..7c9d5a1e4 100644 --- a/none/tests/s390x/bfp-convert.stdout.exp +++ b/none/tests/s390x/bfp-convert.stdout.exp @@ -4,8 +4,8 @@ Rounding as 'per FPC' ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -15,8 +15,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -26,8 +26,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -37,8 +37,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -48,8 +48,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -59,8 +59,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -71,8 +71,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -82,8 +82,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -93,8 +93,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -104,8 +104,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -115,8 +115,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -126,8 +126,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -138,8 +138,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -149,8 +149,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -160,8 +160,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -171,8 +171,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -182,8 +182,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -193,8 +193,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -205,8 +205,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -216,8 +216,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -227,8 +227,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -238,8 +238,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -249,8 +249,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -260,8 +260,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -272,8 +272,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -283,8 +283,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -294,8 +294,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -305,8 +305,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -316,8 +316,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -327,8 +327,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -336,12 +336,12 @@ cgxbra nan cc = 3 cgxbr inf cc = 3 cgxbra inf cc = 3 Rounding as 'per M3' -...setting M3 rounding mode to [-> near away] +...setting M3 rounding mode to [-> nearest with ties away from 0] ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -351,8 +351,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -362,8 +362,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -373,8 +373,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -384,8 +384,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -395,8 +395,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -407,8 +407,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -418,8 +418,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -429,8 +429,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -440,8 +440,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -451,8 +451,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -462,20 +462,20 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 cgxbra nan cc = 3 cgxbr inf cc = 3 cgxbra inf cc = 3 -...setting M3 rounding mode to [-> near away] +...setting M3 rounding mode to [-> nearest with ties to even] ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -485,8 +485,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -496,8 +496,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -507,8 +507,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -518,8 +518,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -529,8 +529,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -541,8 +541,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -552,8 +552,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -563,8 +563,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -574,8 +574,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -585,8 +585,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -596,8 +596,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -608,8 +608,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -619,8 +619,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -630,8 +630,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -641,8 +641,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -652,8 +652,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -663,8 +663,8 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 @@ -675,8 +675,8 @@ cgxbra inf cc = 3 ......f32 -> i32 cfebr 0.000000 cc = 0 cfebra 0.000000 cc = 0 -cfebr -1.000000 cc = 1 -cfebra -1.000000 cc = 1 +cfebr -0.250000 cc = 1 +cfebra -0.250000 cc = 1 cfebr 2.000000 cc = 2 cfebra 2.000000 cc = 2 cfebr nan cc = 3 @@ -686,8 +686,8 @@ cfebra inf cc = 3 ......f32 -> i64 cgebr 0.000000 cc = 0 cgebra 0.000000 cc = 0 -cgebr -1.000000 cc = 1 -cgebra -1.000000 cc = 1 +cgebr -0.250000 cc = 1 +cgebra -0.250000 cc = 1 cgebr 2.000000 cc = 2 cgebra 2.000000 cc = 2 cgebr nan cc = 3 @@ -697,8 +697,8 @@ cgebra inf cc = 3 ......f64 -> i32 cfdbr 0.000000 cc = 0 cfdbra 0.000000 cc = 0 -cfdbr -1.000000 cc = 1 -cfdbra -1.000000 cc = 1 +cfdbr -0.250000 cc = 1 +cfdbra -0.250000 cc = 1 cfdbr 2.000000 cc = 2 cfdbra 2.000000 cc = 2 cfdbr nan cc = 3 @@ -708,8 +708,8 @@ cfdbra inf cc = 3 ......f64 -> i64 cgdbr 0.000000 cc = 0 cgdbra 0.000000 cc = 0 -cgdbr -1.000000 cc = 1 -cgdbra -1.000000 cc = 1 +cgdbr -0.250000 cc = 1 +cgdbra -0.250000 cc = 1 cgdbr 2.000000 cc = 2 cgdbra 2.000000 cc = 2 cgdbr nan cc = 3 @@ -719,8 +719,8 @@ cgdbra inf cc = 3 ......f128 -> i32 cfxbr 0.000000 cc = 0 cfxbra 0.000000 cc = 0 -cfxbr -1.000000 cc = 1 -cfxbra -1.000000 cc = 1 +cfxbr -0.250000 cc = 1 +cfxbra -0.250000 cc = 1 cfxbr 2.000000 cc = 2 cfxbra 2.000000 cc = 2 cfxbr nan cc = 3 @@ -730,11 +730,422 @@ cfxbra inf cc = 3 ......f128 -> i64 cgxbr 0.000000 cc = 0 cgxbra 0.000000 cc = 0 -cgxbr -1.000000 cc = 1 -cgxbra -1.000000 cc = 1 +cgxbr -0.250000 cc = 1 +cgxbra -0.250000 cc = 1 cgxbr 2.000000 cc = 2 cgxbra 2.000000 cc = 2 cgxbr nan cc = 3 cgxbra nan cc = 3 cgxbr inf cc = 3 cgxbra inf cc = 3 + +============ Convert to logical ============= +Rounding as 'per FPC' +...setting FPC rounding mode to [-> near] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting FPC rounding mode to [-> zero] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting FPC rounding mode to [-> +inf] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting FPC rounding mode to [-> -inf] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 3 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 3 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 3 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 3 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 3 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 3 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting FPC rounding mode to [-> prepare-short] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +Rounding as 'per M3' +...setting M3 rounding mode to [-> nearest with ties away from 0] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting M3 rounding mode to [-> prepare-short] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 3 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 3 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 3 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 3 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 3 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 3 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting M3 rounding mode to [-> nearest with ties to even] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting M3 rounding mode to [-> zero] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting M3 rounding mode to [-> +inf] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 1 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 1 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 1 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 1 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 1 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 1 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3 +...setting M3 rounding mode to [-> -inf] +......f32 -> u32 +clfebr 0.000000 cc = 0 +clfebr -0.250000 cc = 3 +clfebr 2.000000 cc = 2 +clfebr nan cc = 3 +clfebr inf cc = 3 +......f32 -> u64 +clgebr 0.000000 cc = 0 +clgebr -0.250000 cc = 3 +clgebr 2.000000 cc = 2 +clgebr nan cc = 3 +clgebr inf cc = 3 +......f64 -> u32 +clfdbr 0.000000 cc = 0 +clfdbr -0.250000 cc = 3 +clfdbr 2.000000 cc = 2 +clfdbr nan cc = 3 +clfdbr inf cc = 3 +......f64 -> u64 +clgdbr 0.000000 cc = 0 +clgdbr -0.250000 cc = 3 +clgdbr 2.000000 cc = 2 +clgdbr nan cc = 3 +clgdbr inf cc = 3 +......f128 -> u32 +clfxbr 0.000000 cc = 0 +clfxbr -0.250000 cc = 3 +clfxbr 2.000000 cc = 2 +clfxbr nan cc = 3 +clfxbr inf cc = 3 +......f128 -> u64 +clgxbr 0.000000 cc = 0 +clgxbr -0.250000 cc = 3 +clgxbr 2.000000 cc = 2 +clgxbr nan cc = 3 +clgxbr inf cc = 3