<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">