<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/141206>141206</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [MLIR] LLVM dialect overflow intrinsics lack the `i1` result type
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            mlir:llvm,
            mlir
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          Sirraide
      </td>
    </tr>
</table>

<pre>
    The overflow intrinsics in the LLVM dialect (`LLVM_SAddWithOverflowOp` and friends) are defined to have only a single integer result, even though the LLVM IR intrinsics they correspond to return 2 values (or rather, an aggregate with two fields): the actual integer result and an `i1` that signals whether overflow happened.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxskkFvnD4QxT-NuYyyAgNmOXDYf6KVIiWKlPzVHqsBD9it10b2wGq_fQVNm7bqCWmw5_3e88OU7OSJOlH_J-qHDBc2IXZvNka0mrI-6Fv3vyEIK8XRhStYz9H6ZIcE1gMbgqenT8-gLToaGIQ8CpVvoy9vJ60_WzYv71dfZqFyQK9hjJa8TkK2gJFA02g9aeAABleC4N0NEJL1k6NNkCaKECktjoW8B1ppUw7LZD4AHl9_R2NDNxhCjJTm4PfVkXiJHiSs6BZKG2mIEJENxW0resBpijQhE1wtG-BrgNGS20lFedrFcOAF3V9Uuyv0IFRui80lG2TYokWX4GpoE_nI0OA8kyd9yHRX6rZsMaOuaKqmPdZl1WSmG9qhVmqkXh9HRXXZNHVx7JXWahjGsc4z28lc1nkty7yRbd4c1LFpVF9Uqu-1qrEVVU4XtO7g3Ho5hDhlNqWFuqIqZK4yhz25tD-7lBdnoyhP20khpZD3P2dSbqWI3fbnrl-mJKrc2cTpYytbdnt9np8eX0X98Gcd_lUbh8O3Pcpfab2HyLeZsiW6zjDPSZQnIc9CnifLZukPQ7gIef7BuH_u5hi-0sBCnndrScjzu7u1k98DAAD__5_48pE">