diff --git a/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp index ac01b37a55307..7c0d369648651 100644 --- a/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp +++ b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp @@ -322,8 +322,6 @@ LogicalResult UniformQuantizedType::verifyInvariants( // Verify scale. double minScale = getMinScale(expressedType); double maxScale = getMaxScale(expressedType); - if (scale <= 0.0 || std::isinf(scale) || std::isnan(scale)) - return emitError() << "illegal scale: " << scale; if (scale < minScale || scale > maxScale) return emitError() << "scale out of expressed type range [" << minScale << ", " << maxScale << "]"; @@ -388,8 +386,6 @@ LogicalResult UniformQuantizedPerAxisType::verifyInvariants( double minScale = getMinScale(expressedType); double maxScale = getMaxScale(expressedType); for (double scale : scales) { - if (scale <= 0.0 || std::isinf(scale) || std::isnan(scale)) - return emitError() << "illegal scale: " << scale; if (scale < minScale || scale > maxScale) return emitError() << "scale out of expressed type range [" << minScale << ", " << maxScale << "]"; diff --git a/mlir/test/Dialect/Quant/parse-uniform-invalid.mlir b/mlir/test/Dialect/Quant/parse-uniform-invalid.mlir index 7613a344cf2b8..4528d2826a850 100644 --- a/mlir/test/Dialect/Quant/parse-uniform-invalid.mlir +++ b/mlir/test/Dialect/Quant/parse-uniform-invalid.mlir @@ -107,7 +107,7 @@ // ----- // Illegal scale: negative -// expected-error@+1 {{illegal scale: -1.000000}} +// expected-error@+1 {{scale out of expressed type range}} !qalias = !quant.uniform:f32, -1.0:127> // -----