<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/119521>119521</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[X86][Float128][compiler-rt] float128 test case core dump
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
zhangtianhao6
</td>
</tr>
</table>
<pre>
test case
```
#include <fenv.h>
#include <stdlib.h>
int
main (void)
{
volatile __float128 a = 0x0.fffffffffffffffp-1022q, b = 0x0.fffffffffffff8p-1022q;
volatile double r;
r = (double) a;
if (fetestexcept (FE_UNDERFLOW))
abort ();
if (r != 0x1p-1022)
abort ();
r = (double) b;
if (!fetestexcept (FE_UNDERFLOW))
abort ();
if (r != 0x1p-1022)
abort ();
exit (0);
}
```
use compiler-rt error: -rtlib=compiler-rt
https://godbolt.org/z/scj8M4WKW
use libgcc ok:
https://godbolt.org/z/YMMjsf3az
**Is compiler-rt bug?**
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJykk0Fv2zgQhX_N6ELYIIemJR10UOIIWOxmF1igSHsKSIqymdKiS1Juml9fSHKcOA1aoBUECOTHeXoz0pMx2m1vTAXiCsQmk0Pa-VA97WS_TVb2O-nXmfLttyqZmIiW0QCtYU1PN60Bue21G1pDgF93pj8ud8BvfiAxtc6qM6O17RPQei9tTwCLo7ctYDmi_ApoTcjRO5msM-T-vnNeJoYFkQT4htBHuuwur8OCUcQvgNdEvX-meD7C38i3flDOkPAMwlQPWMwAsCTymdluBJ0Zh2EetTmkcd3c3H_4d3Pzf_PPf3djD1MbhBAilQ_TiXFrlpgVAgFks002-_pp0Xue1KUnQPYntn7Tl3m00xY970G-mT_vxT9C6yEaov3-YJ0Ji5CICcEH4DVZhOSsAr55RYHWu5QOEXgN2AA2W98q79LShy1g8wTYRP1Q3K7u_r57kXdWbbUm_vNY9muFT7e3D7Hj8mlWIIA1YP1XvLCphi3wZkZZW_G25KXMTMVyzkvKcyGyXWWEpIJRYUqzLvN1h1pJlcsVirLUou0yWyHFFUPGaC6EEEveFUyu1p3uurzVhYQVNXtp3dK54370mNkYB1MxVgpkmZPKuDhlFLE3X8lEAXGMbKjGooUathFW1NmY4otMsslN4f5YrEFsQFw1pyzNq9dDFxtyDto57UT7YEg77A_ZEFz1Zqg27Qa11H4P2IzvPD0Wh-AfjE6AzeQ0AjanVo4Vfg8AAP__16FLCQ">