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

    <tr>
        <th>Summary</th>
        <td>
            Generate stosq for std::fill for X86 targets
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:X86,
            llvm:codegen,
            missed-optimization
      </td>
    </tr>

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

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

<pre>
    w.r.t. https://github.com/llvm/llvm-project/issues/129316
libc++ generates memset for specific std::fill patterns but we can do better with stosq. gcc generates stosq in some cases.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyk0UuO3CAQBuDT4A0ayxTtBwsWPRl1rjBbDNU2CTYOVZ7W5PSRnclrnRXSj6D0f-WI4rQiWtE-i_alcjvPudg5Fhciv7tqzOHdPupScy1n5o2Evgq4CbhNked9rH1eBNxSevt1PG0lf0HPAm6RaEcScFNgtOpEc01x9AKeBTzLCVcsjpHkggshy3sukjb08R69JA7HJH29x5Tk5pixrCTHneUDpXerDFmOeMTyEXmWxJm-1XLy_q-fz1DGVVJejleEVFfB6mC0cRVa1V-U6QejTDXb0Hg1QK9Vq4Z2DG7oFLRjp--tNqbTvooWGmgbrS7KNKo1NaC_-GHolDatueteXBpcXEz14VDnMlWngFVa6b6vkhsx0UkNMDr_Fdej5OvQCQABnwTA6aivPgeccP0dL5EIw1PeOC7xu-OYz7v2pSr2NB_3icSlSZGY_kznyAnt5w-OD42T-R_dI3kdOsmuTMhU7SXZ_9j1z7JvFn4EAAD__0wowu4">