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

    <tr>
        <th>Summary</th>
        <td>
            AAAlign only handles load and store uses
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            ipo,
            missed-optimization,
            llvm::Attributor
      </td>
    </tr>

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

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

<pre>
    https://github.com/llvm/llvm-project/blob/f47034cbe5c02b748742c733cf453b3b907687e5/llvm/lib/Transforms/IPO/AttributorAttributes.cpp#L5287

This chain of use instructions should handle AtomicRMWInst, AtomicCmpXchgInst, and MemIntrinsic at a minimum. This is of particular interest in the atomicrmw and memcpy  cases 
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUks1q3TAQhZ9G3ohcdEeSfxZeuAmGQENLCbRbWZavp-jHaOSU9OmLTdJ025XNDDqHOd8xRHiLzvVMf2L6oTJ7WVPuTSYXQzWl-bVfS9mIyYHByGC8YVn36WJTYDB6__L-udty-ulsYTBOPk0MxkU1Qio7OW0FTI1qGwW2kdIuSstJTp1o6rZx-h8dPN49ZxNpSTkQg_Hx6xcG41BKxmkvKb__ObrYbWMgP2toGyYGJobnFYnb1WDkaeE7OY6RSt5twRSJ05p2P_PVxNk7PpQU0H57-v4YqTC4fxvch-2HXW_vQxNn_uTCYywZI6HlpnDDA0YMe7jw0xHpsNtMLmh3bzLHWFx2VDhGXlbHzamcw69TLrhgt1fOrSFHvJp7OXeyM5Xrr42SLTTNFaq1n8FqbUzbgFs6UU9C2XmRtnZ1baRpXYU9CNBCCS2U1Fe42MYui-xqqduuM7VkSrhg0F-OdC8p3yok2l1_lUq1ovJmcp5O7gC4JQbA4J4BBCRy813aCgb8bY7w_u5OUHJgcvhAciz1Q5X7swbTfiOmhEcq9OFcsHjXD8Pg8RZ5iv71jQNxn8x8BkMlZXdgo2rP_v9rd153dObtwJce_gQAAP__RtTwZg">