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

    <tr>
        <th>Summary</th>
        <td>
            [mlir][gpu] `gpu.rotate` verifier shouldn't check for constant operands
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            mlir:gpu
      </td>
    </tr>

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

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

<pre>
    Op verifiers are not supposed to check non-local properties in `::verify()`: https://mlir.llvm.org/getting_started/DeveloperGuide/#ir-verifier

We should remove this code from the verifier for `gpu.rotate`: https://github.com/llvm/llvm-project/blob/0f48bafafc38581da6f7388b4f3cc143cdbbdede/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp#L1360-L1384

An alternative would be to take `width` as an attribute, if we want to have it verified.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUkk-L2zAQxT-NfBEJshT_ycGHbIO3hYWWQumxjKSxrUaxjDR22G9f7GR3D-2lJ5sR7_HezA9Scv2I2LDiiUn5OTkY-ws4JiUrzhnMNITYXOYBYqaDfW2-TnzB6DqHMXGIyMdAPM3TFBJaToGbAc2Fj2Hc-WDA8ymGCSM5TNyNnJWCqRNTp83klcmayeN9yAeiKa2vsmWyvXoX994v132IPZNtj0Ru7H8lgkhomWzPuKBfzZ9nZ3FTKRd3b_GYODFx-ok8DWH2lke8hgU5DS5xEyzyLoYrpwHfC_EuxDVhP837GAgI_5msdzTMem_Clcl2Tfj47KYYfqMhJlvtg2ayFd2h1tBBZ1Rd1LmFsqtUXetDp4zJD8pYrS1u2de6q49bdWcH_m70_O0Hk-2X7_ffx3xvpolJ9ZKrUuxeclUf7l1PIwdPGEcgtyC_bbU1rlchuOBa7eYsDawUHBKHkQNRdHomZPITdx2_Ib_BSKtigAW5o7fl2H1mG2WP6ggZNnlV5EeRF8cyGxqRCyyOoGtQRleqq6EzQoOu6tICdmXmGilkISpR5UV-LMq9VWBQWVkpUEUhBTsIvILz7_fOXEozNvmhUlJkHjT69EB0W5Q69dP8YDQ22_L13Cd2EN4lSh8-5MhvcG-y4syKp1VZnP-68wcFd15GJit60LxyYcKYaN3NShyMNmVz9M1_k7EVS0y2j25LI_8EAAD__-XYJAc">