@@ -908,14 +908,14 @@ class TranslateToFuzzReader {
908908 case 2 : {
909909 // special values
910910 switch (type) {
911- case i32 : value = Literal (pick<int32_t >(0 , - 1 , 1 ,
911+ case i32 : value = Literal (pick<int32_t >(0 ,
912912 std::numeric_limits<int8_t >::min (), std::numeric_limits<int8_t >::max (),
913913 std::numeric_limits<int16_t >::min (), std::numeric_limits<int16_t >::max (),
914914 std::numeric_limits<int32_t >::min (), std::numeric_limits<int32_t >::max (),
915915 std::numeric_limits<uint8_t >::max (),
916916 std::numeric_limits<uint16_t >::max (),
917917 std::numeric_limits<uint32_t >::max ())); break ;
918- case i64 : value = Literal (pick<int64_t >(0 , - 1 , 1 ,
918+ case i64 : value = Literal (pick<int64_t >(0 ,
919919 std::numeric_limits<int8_t >::min (), std::numeric_limits<int8_t >::max (),
920920 std::numeric_limits<int16_t >::min (), std::numeric_limits<int16_t >::max (),
921921 std::numeric_limits<int32_t >::min (), std::numeric_limits<int32_t >::max (),
@@ -924,13 +924,13 @@ class TranslateToFuzzReader {
924924 std::numeric_limits<uint16_t >::max (),
925925 std::numeric_limits<uint32_t >::max (),
926926 std::numeric_limits<uint64_t >::max ())); break ;
927- case f32 : value = Literal (pick<float >(0 , - 1 , 1 ,
927+ case f32 : value = Literal (pick<float >(0 ,
928928 std::numeric_limits<float >::min (), std::numeric_limits<float >::max (),
929929 std::numeric_limits<int32_t >::min (), std::numeric_limits<int32_t >::max (),
930930 std::numeric_limits<int64_t >::min (), std::numeric_limits<int64_t >::max (),
931931 std::numeric_limits<uint32_t >::max (),
932932 std::numeric_limits<uint64_t >::max ())); break ;
933- case f64 : value = Literal (pick<double >(0 , - 1 , 1 ,
933+ case f64 : value = Literal (pick<double >(0 ,
934934 std::numeric_limits<float >::min (), std::numeric_limits<float >::max (),
935935 std::numeric_limits<double >::min (), std::numeric_limits<double >::max (),
936936 std::numeric_limits<int32_t >::min (), std::numeric_limits<int32_t >::max (),
@@ -940,9 +940,12 @@ class TranslateToFuzzReader {
940940 default : WASM_UNREACHABLE ();
941941 }
942942 // tweak around special values
943- if (oneIn (3 )) {
943+ if (oneIn (3 )) { // +- 1
944944 value = value.add (LiteralUtils::makeLiteralFromInt32 (upTo (3 ) - 1 , type));
945945 }
946+ if (oneIn (2 )) { // flip sign
947+ value = value.mul (LiteralUtils::makeLiteralFromInt32 (-1 , type));
948+ }
946949 break ;
947950 }
948951 case 3 : {
0 commit comments