<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/96950>96950</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Some functions with outlined prologs fail to catch exceptions
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
igorkudrin
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
ellishg
</td>
</tr>
</table>
<pre>
We have been investigating a bug in an iOS app where a function is failing to catch an exception, leading to a crash. The related functions had their prologs outlined using `-homogeneous-prolog-epilog`, and disabling that optimization fixed the crash. We also found that reverting https://github.com/llvm/llvm-project/commit/6e54fccede402c9ed0e8038aa258a99c5a2773e5 (https://reviews.llvm.org/D153098) also fixed crash when the optimization is enabled.
Since I don't know a lot about CFI instructions, I don't have a small reproducer, but I am happy to provide IR for a few functions if that helps.
@igorkudrin @MaskRay @smeenai Do any of you have some idea of what's going on? Can this diff be safely reverted? Or can we fix somehow?
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUU8FupDgQ_RpzKU0LDDTNgcNsopZyWI00WWnOhV3g2hgb2aZ7er9-ZTpJb457AQueq169Vw9j5NkRDaL9Q0jJsw9vmw7shJSifS5wS8aHgazlaOZi9Po2_CIweCEYiRywu1BMPGNiNwPCuM3ADtAB_3gFXFe4GgoECNPmVGLvgCNMyDbjkweFSZmMp9-K1gwQ8gksoX4HIKiA0RzgL0MQyGIi_VksgkENyRAHWIO3fo7gt2TZkYYt5hLiWH4zfvEzOfJb_HaHfaOVrZ_Fsczt0GnQHHG8szKYwK-JF_4Hd8oT_6a9zQeXXwRoo4fJb07fLwS6UNhVMCmtUdTfhTwLeZ45mW08KL8Iebb28vHKRP4mlYQ8K78snA9HaptJKdLUlFL1pEs6lfUJUbYn7HvVouy6mloQ8vS1S6AL0zUecuWDD7OQ5-eqrcv-JGT_znUfYh8gm-L2eb6MyRHI4WhJH0T5LMrv9-crO0XwAjp70yV4c_4KCNYnwNFvCZ7OL8AuprDdTcmSPuD7siDEBa2FQGvwelMUMmjcErwALmBwXW_Z7TX4C2uCl58w-ZDXhq7_cZunu9iG7Bq_kBRN-dheEE35J8a3n3jLx7gQOWR49oDuBn6Cm9_uvKJfCFgT5q9Xg0nILsLss4_eifoMT5iV4giapwlGgogT2du736Qz5kcAhQ6ulEXeaxp_FfW50EOt-7rHgoaqq_q2apquKszQaV1OY0WyUaruj62SXd2r40SlHo8VqoIHWcqmPMquOrVNXR3GU1f1qj11rdJaq140JS3I9tPxgmPcaOiPfVsWFkey8T3Vjq6w_3wPdRj2_Ru3OYqmtBzTY2-KxMnS8Jplech-5WQeufoIWk7xI8Kf-Y3FFuzwv0OwM4xCnu8TXAb5bwAAAP__-8SOrA">