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

    <tr>
        <th>Summary</th>
        <td>
            [Bolt] issue about using std::hash in YamlProfileReader and its test case
        </td>
    </tr>

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

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

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

<pre>
    bolt tries to match block counts based on hashes generated from std::hash. However, std::hash does not guarantee the result will be the same from different setups.

I recently used a llvm-bolt linked against libc++, and it failed on test case X86/reader-stale-yaml.test, since the std::hash results are different from these two libraries...

<img width="505" alt="image" src="https://github.com/llvm/llvm-project/assets/47880367/6e7dd792-37ba-48d7-80c8-6b84897f3a94">

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUks9urTYQh5_GbEYgYvN3wSLJ6VErVWpVddEuBzyAe40deYZ7lLevgEhpuruSBfIYDd83_iGzWwLRoOoXVd8y3GWNafAusAsYnvq-zsZo34cxegFJjhgkwoYyrTD6OH2DKe5BGEZkshADrMgrMSwUKKGQhTnFDVisMs_KPB_HBfwcH_SdktKvX0_ARmIIUWDZMWEQIpCVIBHvXuDhvIfxKjFudPW2bp4pURBgkv2NC1XeVPl8PX-BRBMF8e-wH4QI3n_f8tPHu_DtKC3oAh_bcVL65VyvgMGCE5jR-UtMiAUmZIK_ukbpeyK0lHIW9JS_4-aL44tTyYXpA_KL3GXBgIn-A306yEpMII94UCQ8Bl0UX0SUeXXbAg9nZVXmprSuy1ppDejl2rsNFzoqnKarsoq88QGg70rfFyfrPhZT3JS-H1P4eOVvKf5Dkyh9R2YSVvpetV1XmqZV-t5Qa23b69y0I-ZVZ9u8K6cub8au6vp2NthXSmtlfrpAMzsY25seMxqemt60fdv0VbYOvSk7O49l2Xe672w9Tk0z4rFqW0-2ztygS23KvqxKo59MVYyzabHtdI-zLuupVFVJGzpfHNhFTEvmmHcamlpXT5nHkTyfUdb65bdf_zyo6luWhuvK94VVVXrHwp8NxIk_4_8Svaj6BmdHwDHuAju7sPzvEl2Av3Hzv6c4O09_nCH4CAt_ZiTbkx9-ePznv4_xn0L_BgAA___qmynj">