Page MenuHomeFreeBSD

riscv: Add a soft-float implementation of fabs()
ClosedPublic

Authored by arichardson on Mar 1 2021, 11:30 AM.

Details

Summary

We could just use a C implementation using __builtin_fabs(), but using
this assembly version guarantees that there is no additional prolog/epilog
code. Additionally, clang generates worse code for masking off the top bit
than GCC: https://bugs.llvm.org/show_bug.cgi?id=49377.

Test Plan

Should fix RISCV64 softfloat world build

Diff Detail

Repository
R10 FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.