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

    <tr>
        <th>Summary</th>
        <td>
            A throw exception pragram was coredump after bolt optimize.
        </td>
    </tr>

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

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

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

<pre>
    There is a demo code that was throw execption and would catch it. It would to coredump after I use llvm-bolt to optimize it. The source code is:

```
#include <stdio.h>

class ExceptionA {
};

void foo() {
  int count = 0;
  while(true){
  try {
    printf("ttttt\n");
    if(count++ < 2){
      throw ExceptionA();
    }
    return;
  }
  catch(ExceptionA&){
 printf("cccc\n");
    continue;
  }
}
}

int main() {
  foo();
  return 0;
}
```

I use the command to compile it and bolt optimized:
```
clang++ main.cc -pthread  -fPIC -std=libc++ -Wl,-q  -lc++abi  -std=gnu++14 -o main
llvm-bolt main -o main.bolt
./main.bolt

# after run it, it was output like:
ttttt
Segmentation fault (core dumped)
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx0VM2OozgQfhrnUgLRBtLJgUMnmUh9W2lH2rMxBXjX2Kxdnp6Zp1_ZkIT0zqDIgfJX_1-V8F4NBrFh9YnVl50INFrXaGUGOaIZejQ_1a613Y_m64gOQXkQ0OFkQdoOgUZB8CE80OjsB-B3lDMpa0CYDj5s0B1IQXIERTm80yqiqO2wC9MMoid08A7BI2j9bcpaqyki7ExqUj8xqX4dEbwNTuLiV3lWvrHiworbuS_W3_LJS2WkDh0CK8-eOmXzkZVftipSC-_hy3eJKeQ3YK-n9f71wsrTFvvNqg56axk_MH58IAGUIZA2GAJWXqC46wF8jEoj4wdyARk_bnTI_diaAJidMtQn45ziw-qzYZxHtXKDUxGTvDF-YvwUkwP-bDw-SzceqS1hP5mKOd4_HFJwZnO_uU39Y_ywtbZ_crmNXkopfxO8tIaUCfgrN794SWes7iSU-X_d783YmFvS2DThYe0TPdK5kI7GyKlpioxNxJxmpSPrEocTG29U7B6ke7YntTDD2pIYbi4lZDONDkUHkPV_vJ8h89Sx8qJVK1dk9pdm_Jz9C5DpVSZaBTfkYMIifKkgs0sZkrfHmETZ7S6PkgWQM379JLqPxTpwLhhQxPg5JhoH2AaaA4FW_-A9y4WK6fVPHCY0JNJw9yJogkRFhxDHGLvYiefS7Lqm7I7lUeywedkfirqoivK4G5uubMta1Lxq-RHrrpC9kLWsXqujFDVW_U41vOBlhBf7qJOLw-u-5UVVF3350mLNqgInoXQeS5FbN-yU9wGb_cuxOOy0aFH720pzzVKvMHhWFVp58g81UqSxebuvr5XiMDsxODGlynxaVU-MyHfB6WYkmtNC4lfGr4OiMbS5tBPj1-hp_ctmZ_9GSYxfU7Se8WsK-L8AAAD__48cnOI">