[Mlir-commits] [mlir] [mlir][arith] doc updates for ub semantics, and int representations (PR #72932)
Jacob Yu
llvmlistbot at llvm.org
Tue Nov 21 04:05:23 PST 2023
================
@@ -198,7 +198,9 @@ def Arith_AddIOp : Arith_TotalIntBinaryOp<"addi", [Commutative]> {
The `addi` operation takes two operands and returns one result, each of
these is required to be the same type. This type may be an integer scalar
type, a vector whose element type is integer, or a tensor of integers. It
- has no standard attributes.
+ has no standard attributes. If an overflow occurs, the result is the
+ mathematical value of the addition modulo 2^n, where `n` is the width of
+ the integer type.
----------------
pingshiyu wrote:
hmmm (not sure if I follow what you mean totally!) overflowing is the current behaviour (i.e. in integration tests), is in line with llvm, and may be the expected semantics?
i suppose the alternatives would be to either leave as undefined, or produce a poison?
https://github.com/llvm/llvm-project/pull/72932
More information about the Mlir-commits
mailing list