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

    <tr>
        <th>Summary</th>
        <td>
            [x86][PrologEpilogInsertion] prefer `leave` for prolog?
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:X86
      </td>
    </tr>

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

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

<pre>
    I noticed that since forever GCC uses `leave` for epilogs and clang does not. Seems like a shorter encoding, but who knows in terms of uops.  Is this a worthwhile change in LLVM's codegen to make?

cc @topperc @phoebewang 
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxkkcuK3DwQhZ-mvCmmUcv3hRcz079_BiYQCIRsdam2lFZLRiVPJ28f7ASyyEYqqFOn6vApZr9EognaF2gvldqKS3mK3twssdpC9JS50sn-nN4wpuINWSxOFWQfDeE1ZfqgjP-_vuLGxAidCKQ-CDqxN5FWH9LCqKJFE1Rc0Cbi3eqEX4jujMHfCBWyS7lQRoomWR8XkK-ot4IPl_AW04PRRyyU74zpilta-YT4xlicZ1T4SLm4h_OB0DgVF9rl7-9fP4HsGU2ytFDEkvCubgT1DOIC4vn3awxCI0paV8pHubpEmh77tZWdajvWo6poOnfjuWmGsR8qN9X99Tz0JE2rx8ZYS5Ls2ItBKC2669BXfpJC1mIQvZRtdx5OzViPptdGt6oftZHQCLorH04hfNxPKS-VZ95o6pr2LKqgNAU-wEiplblRtFA_fxs6kHJnlad97klvC0MjgufCf52KL-Gg-mPooL1A-_I5p5CW_w4cb5EpF58itBdcM10p_wNuPfRQz9WWw-RKWRnqZ5AzyHnxxW36ZNId5Lzv_PM9rTl9J1NAzkcUBjkfaX4FAAD__-vzyIA">