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

    <tr>
        <th>Summary</th>
        <td>
            Unable to cought exception when using lld with lto=thin on MacOS ARM64
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            lld
      </td>
    </tr>

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

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

<pre>
    Hey, I have a problem where my exception is never cought when using lld, but it's only present when combined with lto=thin


Code snippet: 
```cpp
// test.cpp

#include <exception>
#include <stdio.h>

int main(int argc, char **argv) {
    try {
 throw std::exception();
    } catch (const std::exception &e) {
 printf("Cought %s\n", e.what());
    }
    return 0;
}
```

compiled with: 
```bash 
clang++ -flto=thin -fuse-ld=lld test.cpp 
``` 

results in: 
```bash 
> ./a.out
libc++abi: terminating due to uncaught exception of type std::exception: std::exception
[1]    3622 abort      ./a.out
``` 

When compiled without either lto=thin or use-ld=lld it works correctly: 
```bash 
> clang++ test.cpp -flto=thin && ./a.out 
Cought std::exception
> clang++ test.cpp -fuse-ld=lld && ./a.out
Cought std::exception
```

LLVM version: 
```bash
clang version 16.0.6
Target: arm64-apple-darwin22.6.0
Thread model: posix
InstalledDir: /opt/local/libexec/llvm-16/bin
```
Also affected in Homebrew distribution under the same version
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMVd-P4kYM_muGF2ujxIEAD3lgl0N30q0qtdfe8_wwZK6TmWjGWZb-9VVCFtgt13a1CsGesf19n41lSvbgiWqxeBSL7Uz23IRYfw8_tCXdPMu_-jhTwZzqz3QS-ARfoJEvBBK6GJSjFo4NRYL2BPSqqWMbPNgEnl4ogg79oeHhiIc-WX8A58wQRfUMlgUuEwTvTtBFSuSnkzq0ynoycLTcgOMgyi031ot8K_LN7fMpGILkbdcRi3IDk6_Kz_-66yYL7gTugClxdjVOrtJ67XpDIMqnCwZRfrrnT2xsyJqrd3xaz9BK6wWuhlcZD3oAqRsZQeBG4EbGw4vANYjl4_kKAADH042BmxiOkNiIciPKzbUSXAlci_LmolhuQUvWDQhc6eAT37kHAit6n7OL1vN-DIhPZ2kELpJYPHmBOJRM2bGRPKX8Z9brl0jcRw_55cTFe2H_liEd2s66SdI7SimZmsmmnfQHgY8CH-Fhf1UfHvZ9ogdnRLl1zlzE_BgKbvNGSr3jBNb_e1JRfoJM4E5moeezyVmlz2VIZYfbTLG1XvLQxqYn4AC913Kk8cp62AOfOronZLm5Zz3nXzwWYrEdmC0rRJAqRIbx70NZ93F-n-bmSnLoGchyQ_FmgiBEeEeiZTiG-GcCHWIkze703zzdCnQR4Z1SAiuB1bVyeJvWkaufcvDz2O9q_hj9_wW_15Vfv_7xDC8U06TOHdw3Pfl2Eooqy7Pq7Pkm4-H82yNjW80fZNc5ejAyHq1HzKpsSvitiSQNtMGQG053IdnXs-uLTyydI7O1cawCd6FjgTsXtHTDp1X0Snp4cy_tQ1EJ3Cl7H9jGpQByvyfNZMB6-BxaUpGOYGziaFU_dmnvDUXghiDJlt6QzUxdmnW5ljOqi2q9KFcrLItZU9N-mReo5grXy1wtFwVVGguUJp-TWarVzNaYY5mvEYuyyMsiWykya700qxJxQcu9mOfUSuuyAUIW4mFmU-qprpYFrmdOKnJp3EGI44rAYRnFegSs-kMS89zZxOl6ny07qn_3UrlxFqddc53E91vn4zKB4OFZ6l9-g82vz9V81kdXN8xdGtpnXBcHy02vMh3aifk3AboYfpAeFBoxJIG7EcbfAQAA__8LYSyD">