remove undefined conversions from test constantUnaryConversion.comp
authorMarius Hillenbrand <mhillen@linux.ibm.com>
Mon, 15 Nov 2021 15:31:50 +0000 (16:31 +0100)
committerGreg Fischer <greg@lunarg.com>
Mon, 15 Nov 2021 21:01:15 +0000 (14:01 -0700)
Remove remaining conversions from negative float64_t to unsigned
integers, which are undefined behavior.

As a result, this test will also succeed on platforms that implement
those conversions differently than x86. That addresses one of the issues
in #2815.

Test/baseResults/constantUnaryConversion.comp.out
Test/constantUnaryConversion.comp

index 752745a..78372f0 100644 (file)
@@ -29,7 +29,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_init' ( const float)
 0:?       13.000000
 0:?     'float64_t_init' ( const double)
-0:?       -4.000000
+0:?       4.000000
 0:?     'neg_float16_t_init' ( const float16_t)
 0:?       -42.000000
 0:?     'neg_float32_t_init' ( const float)
@@ -83,7 +83,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int8_t' ( const int8_t)
 0:?       13 (const int8_t)
 0:?     'float64_t_to_int8_t' ( const int8_t)
-0:?       -4 (const int8_t)
+0:?       4 (const int8_t)
 0:?     'bool_to_int16_t' ( const int16_t)
 0:?       1 (const int16_t)
 0:?     'int8_t_to_int16_t' ( const int16_t)
@@ -107,7 +107,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int16_t' ( const int16_t)
 0:?       13 (const int16_t)
 0:?     'float64_t_to_int16_t' ( const int16_t)
-0:?       -4 (const int16_t)
+0:?       4 (const int16_t)
 0:?     'bool_to_int32_t' ( const int)
 0:?       1 (const int)
 0:?     'int8_t_to_int32_t' ( const int)
@@ -131,7 +131,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int32_t' ( const int)
 0:?       13 (const int)
 0:?     'float64_t_to_int32_t' ( const int)
-0:?       -4 (const int)
+0:?       4 (const int)
 0:?     'bool_to_int64_t' ( const int64_t)
 0:?       1 (const int64_t)
 0:?     'int8_t_to_int64_t' ( const int64_t)
@@ -155,7 +155,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int64_t' ( const int64_t)
 0:?       13 (const int64_t)
 0:?     'float64_t_to_int64_t' ( const int64_t)
-0:?       -4 (const int64_t)
+0:?       4 (const int64_t)
 0:?     'bool_to_uint8_t' ( const uint8_t)
 0:?       1 (const uint8_t)
 0:?     'int8_t_to_uint8_t' ( const uint8_t)
@@ -179,7 +179,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint8_t' ( const uint8_t)
 0:?       13 (const uint8_t)
 0:?     'float64_t_to_uint8_t' ( const uint8_t)
-0:?       252 (const uint8_t)
+0:?       4 (const uint8_t)
 0:?     'bool_to_uint16_t' ( const uint16_t)
 0:?       1 (const uint16_t)
 0:?     'int8_t_to_uint16_t' ( const uint16_t)
@@ -203,7 +203,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint16_t' ( const uint16_t)
 0:?       13 (const uint16_t)
 0:?     'float64_t_to_uint16_t' ( const uint16_t)
-0:?       65532 (const uint16_t)
+0:?       4 (const uint16_t)
 0:?     'bool_to_uint32_t' ( const uint)
 0:?       1 (const uint)
 0:?     'int8_t_to_uint32_t' ( const uint)
@@ -227,7 +227,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint32_t' ( const uint)
 0:?       13 (const uint)
 0:?     'float64_t_to_uint32_t' ( const uint)
-0:?       4294967292 (const uint)
+0:?       4 (const uint)
 0:?     'bool_to_uint64_t' ( const uint64_t)
 0:?       1 (const uint64_t)
 0:?     'int8_t_to_uint64_t' ( const uint64_t)
@@ -251,7 +251,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint64_t' ( const uint64_t)
 0:?       13 (const uint64_t)
 0:?     'float64_t_to_uint64_t' ( const uint64_t)
-0:?       18446744073709551612 (const uint64_t)
+0:?       4 (const uint64_t)
 0:?     'bool_to_float16_t' ( const float16_t)
 0:?       1.000000
 0:?     'int8_t_to_float16_t' ( const float16_t)
@@ -275,7 +275,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_float16_t' ( const float16_t)
 0:?       13.000000
 0:?     'float64_t_to_float16_t' ( const float16_t)
-0:?       -4.000000
+0:?       4.000000
 0:?     'bool_to_float32_t' ( const float)
 0:?       1.000000
 0:?     'int8_t_to_float32_t' ( const float)
@@ -299,7 +299,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_float32_t' ( const float)
 0:?       13.000000
 0:?     'float64_t_to_float32_t' ( const float)
-0:?       -4.000000
+0:?       4.000000
 0:?     'bool_to_float64_t' ( const double)
 0:?       1.000000
 0:?     'int8_t_to_float64_t' ( const double)
@@ -323,7 +323,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_float64_t' ( const double)
 0:?       13.000000
 0:?     'float64_t_to_float64_t' ( const double)
-0:?       -4.000000
+0:?       4.000000
 0:?     'neg_float16_t_to_bool' ( const bool)
 0:?       true (const bool)
 0:?     'neg_float32_t_to_bool' ( const bool)
@@ -407,7 +407,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_init' ( const float)
 0:?       13.000000
 0:?     'float64_t_init' ( const double)
-0:?       -4.000000
+0:?       4.000000
 0:?     'neg_float16_t_init' ( const float16_t)
 0:?       -42.000000
 0:?     'neg_float32_t_init' ( const float)
@@ -461,7 +461,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int8_t' ( const int8_t)
 0:?       13 (const int8_t)
 0:?     'float64_t_to_int8_t' ( const int8_t)
-0:?       -4 (const int8_t)
+0:?       4 (const int8_t)
 0:?     'bool_to_int16_t' ( const int16_t)
 0:?       1 (const int16_t)
 0:?     'int8_t_to_int16_t' ( const int16_t)
@@ -485,7 +485,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int16_t' ( const int16_t)
 0:?       13 (const int16_t)
 0:?     'float64_t_to_int16_t' ( const int16_t)
-0:?       -4 (const int16_t)
+0:?       4 (const int16_t)
 0:?     'bool_to_int32_t' ( const int)
 0:?       1 (const int)
 0:?     'int8_t_to_int32_t' ( const int)
@@ -509,7 +509,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int32_t' ( const int)
 0:?       13 (const int)
 0:?     'float64_t_to_int32_t' ( const int)
-0:?       -4 (const int)
+0:?       4 (const int)
 0:?     'bool_to_int64_t' ( const int64_t)
 0:?       1 (const int64_t)
 0:?     'int8_t_to_int64_t' ( const int64_t)
@@ -533,7 +533,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_int64_t' ( const int64_t)
 0:?       13 (const int64_t)
 0:?     'float64_t_to_int64_t' ( const int64_t)
-0:?       -4 (const int64_t)
+0:?       4 (const int64_t)
 0:?     'bool_to_uint8_t' ( const uint8_t)
 0:?       1 (const uint8_t)
 0:?     'int8_t_to_uint8_t' ( const uint8_t)
@@ -557,7 +557,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint8_t' ( const uint8_t)
 0:?       13 (const uint8_t)
 0:?     'float64_t_to_uint8_t' ( const uint8_t)
-0:?       252 (const uint8_t)
+0:?       4 (const uint8_t)
 0:?     'bool_to_uint16_t' ( const uint16_t)
 0:?       1 (const uint16_t)
 0:?     'int8_t_to_uint16_t' ( const uint16_t)
@@ -581,7 +581,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint16_t' ( const uint16_t)
 0:?       13 (const uint16_t)
 0:?     'float64_t_to_uint16_t' ( const uint16_t)
-0:?       65532 (const uint16_t)
+0:?       4 (const uint16_t)
 0:?     'bool_to_uint32_t' ( const uint)
 0:?       1 (const uint)
 0:?     'int8_t_to_uint32_t' ( const uint)
@@ -605,7 +605,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint32_t' ( const uint)
 0:?       13 (const uint)
 0:?     'float64_t_to_uint32_t' ( const uint)
-0:?       4294967292 (const uint)
+0:?       4 (const uint)
 0:?     'bool_to_uint64_t' ( const uint64_t)
 0:?       1 (const uint64_t)
 0:?     'int8_t_to_uint64_t' ( const uint64_t)
@@ -629,7 +629,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_uint64_t' ( const uint64_t)
 0:?       13 (const uint64_t)
 0:?     'float64_t_to_uint64_t' ( const uint64_t)
-0:?       18446744073709551612 (const uint64_t)
+0:?       4 (const uint64_t)
 0:?     'bool_to_float16_t' ( const float16_t)
 0:?       1.000000
 0:?     'int8_t_to_float16_t' ( const float16_t)
@@ -653,7 +653,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_float16_t' ( const float16_t)
 0:?       13.000000
 0:?     'float64_t_to_float16_t' ( const float16_t)
-0:?       -4.000000
+0:?       4.000000
 0:?     'bool_to_float32_t' ( const float)
 0:?       1.000000
 0:?     'int8_t_to_float32_t' ( const float)
@@ -677,7 +677,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_float32_t' ( const float)
 0:?       13.000000
 0:?     'float64_t_to_float32_t' ( const float)
-0:?       -4.000000
+0:?       4.000000
 0:?     'bool_to_float64_t' ( const double)
 0:?       1.000000
 0:?     'int8_t_to_float64_t' ( const double)
@@ -701,7 +701,7 @@ local_size = (1, 1, 1)
 0:?     'float32_t_to_float64_t' ( const double)
 0:?       13.000000
 0:?     'float64_t_to_float64_t' ( const double)
-0:?       -4.000000
+0:?       4.000000
 0:?     'neg_float16_t_to_bool' ( const bool)
 0:?       true (const bool)
 0:?     'neg_float32_t_to_bool' ( const bool)
index 7226a26..f0710cd 100644 (file)
@@ -13,7 +13,7 @@ const uint32_t uint32_t_init = uint32_t(3);
 const uint64_t uint64_t_init = uint64_t(4);\r
 const float16_t float16_t_init = float16_t(42.0);\r
 const float32_t float32_t_init = float32_t(13.0);\r
-const float64_t float64_t_init = float64_t(-4.0);\r
+const float64_t float64_t_init = float64_t(4.0);\r
 \r
 const float16_t neg_float16_t_init = float16_t(-42.0);\r
 const float32_t neg_float32_t_init = float32_t(-13.0);\r