<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">