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

    <tr>
        <th>Summary</th>
        <td>
            Enable exp10 libcall recognition on linux
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            good first issue,
            llvm:codegen,
            llvm:optimizations,
            platform:linux,
            floating-point
      </td>
    </tr>

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

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

<pre>
    TargetLibraryInfo does not report exp10/exp10f/exp10l as available on Linux, disabling all special library call optimizations:

https://github.com/llvm/llvm-project/blob/c0682840877a21960f4c21a97b5f497d4ccc82d5/llvm/lib/Analysis/TargetLibraryInfo.cpp#L550

The reason cited is these were buggy in glibc prior to version 2.18. Version 2.18 celebrated its 10th birthday this weekend, so I think it's alright to just drop this restriction.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUkk9P5DgQxT-NcykR2dX5e8iBhW0JiSPau-1UkgK3HdkO0PvpRwmgYWZOc4mTZ1e9yvNPp8SzJxpE_Y-o7wu95SXEQcdE_lKYMF6HJx1nyo9soo7XBz8FGAMl8CFDpDXEDPS-KinwfKzT14sDnUC_anbaOILg4ZH99i7wDkZO2jj2M2jnIK1kWTtwHxZgdzGsmS_8v84cfBKnWyHvhfx8Ljmvh4ZngeeZ87KZ0oaLwLNzr1_LzRrDM9ks8GxcMALPVjYddpXs2laj6hs5VRaV7ltTT1XfjpW1tsOx_taH97pbr901cRJ4_iOM0q6rwNNjXcvvIz4tBJF0Ch4sZxqBE-SFEsEbRQKzzfMV2MPs2FhYI4cIOcArxcTBA5aqK-G_b19gyZGJ-uiVEyiZFzAc8zLqK-SFE7wRvZAf94BTgIdd9C_AWWCbQLvI85J3k-ctZRhjWD_KIqUc2e5Bl8U4nMb-1OuCBtX0KFXdKlUsw9hr6tSkVWNNRVOLsqkUTSO2DU7GmoIHlHiSnaoUoqpViVIiTrppu7q3U9OJStJFsyv3aMsQ54JT2mhoqqZtC6cNuXRQiDiHMMLEMWU4zghEgXcC8biV060NI83kf5d_ReZrc3U6TyHuB9wHf58bkws6s59v1sA-73J9X8ThQMdscxKVdJxy-jlw5uxo-NcfPB-M78weuEayYfa8W--kH07FFt3w16wef7yjdgTzIwAA__-GnTCu">