diff options
Diffstat (limited to 'mlir/lib/Dialect/QuantOps/Utils/FakeQuantSupport.cpp')
-rw-r--r-- | mlir/lib/Dialect/QuantOps/Utils/FakeQuantSupport.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/mlir/lib/Dialect/QuantOps/Utils/FakeQuantSupport.cpp b/mlir/lib/Dialect/QuantOps/Utils/FakeQuantSupport.cpp index 13c622e50d1..2667da98242 100644 --- a/mlir/lib/Dialect/QuantOps/Utils/FakeQuantSupport.cpp +++ b/mlir/lib/Dialect/QuantOps/Utils/FakeQuantSupport.cpp @@ -45,9 +45,15 @@ mlir::quant::fakeQuantAttrsToType(Location loc, unsigned numBits, double rmin, } } else if (numBits <= 16) { storageType = IntegerType::get(16, ctx); - flags = QuantizationFlags::Signed; - qmin = -32768; - qmax = 32767; + if (isSigned) { + flags = QuantizationFlags::Signed; + qmin = -32768; + qmax = 32767; + } else { + flags = 0; + qmin = 0; + qmax = 65535; + } } else { emitError(loc, "unsupported FakeQuant number of bits: ") << numBits; return nullptr; |