Add support for arith.extsi, arith.extui, and arith.trunci ops.
Tested by checking the results for all 16-bit inputs when emulating i16 with i8.
Paths
| Differential D133612
[mlir][arith] Support wide int cast emulation ClosedPublic Authored by kuhar on Sep 9 2022, 1:19 PM.
Details Summary Add support for arith.extsi, arith.extui, and arith.trunci ops. Tested by checking the results for all 16-bit inputs when emulating i16 with i8.
Diff Detail
Event Timelinekuhar added a child revision: D133629: [mlir][arith] Support wide integer multiplication emulation.Sep 9 2022, 9:15 PM kuhar retitled this revision from [mlir][spirv] Support wide int cast emulation to [mlir][arith] Support wide int cast emulation.Sep 12 2022, 12:41 PM This revision is now accepted and ready to land.Sep 12 2022, 3:09 PM This revision now requires changes to proceed.Sep 13 2022, 9:39 AM kuhar marked 3 inline comments as done. Comment ActionsFixed type checks for ExtSI and ExtUI. Rebased. This revision is now accepted and ready to land.Sep 15 2022, 7:41 AM Closed by commit rG3afd351b5fd9: [mlir][arith] Support wide int cast emulation (authored by kuhar). · Explain WhySep 15 2022, 8:37 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 460426 mlir/lib/Dialect/Arithmetic/Transforms/EmulateWideInt.cpp
mlir/test/Dialect/Arithmetic/emulate-wide-int.mlir
|
This is unnecessary. The operands to adaptor will always be materialized as legal for the target.