[all-commits] [llvm/llvm-project] a1a559: [mlir][arith] add wide integer emulation support f...
egebeysel via All-commits
all-commits at lists.llvm.org
Thu Mar 27 13:01:26 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a1a5594ad2173be10e3e790fb1dce1a059d32e5b
https://github.com/llvm/llvm-project/commit/a1a5594ad2173be10e3e790fb1dce1a059d32e5b
Author: egebeysel <beyselege at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
M mlir/test/Dialect/Arith/emulate-wide-int.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-subi-i32.mlir
Log Message:
-----------
[mlir][arith] add wide integer emulation support for subi (#133248)
Adds wide integer emulation support for the `arith.subi` op. `(i2N, i2N)
-> (i2N)` ops are emulated as `(vector<2xiN>, vector<2xiN>) ->
(vector<2xiN>)`, just as the other emulation patterns.
The emulation uses the following scheme:
```
resLow = lhsLow - rhsLow; // carry = 1 if rhsLow > lhsLow
resHigh = lhsLow - carry - rhsLow;
```
Signed-off-by: Ege Beysel <beysel at roofline.ai>
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list