https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113155
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I looked into the sources of libgcc, __aeabi_f2ulz is defined as __fixunssfdi
which is defined in soft-fp/fixunssfdi.c and that does:
```
UDItype
__fixunssfdi (SFtype a)
{
FP_DECL_EX;
FP_DECL_S (A);
UDItype r;
FP_INIT_EXCEPTIONS;
FP_UNPACK_RAW_S (A, a);
FP_TO_INT_S (r, A, DI_BITS, 0);
FP_HANDLE_EXCEPTIONS;
return r;
}
```
FP_TO_INT_S is defined to _FP_TO_INT which basically does what you want except
it can handle FP exceptions.