Fix overflow / underflow handling for expm1f (#1278)

* Fix overflow / underflow handling for expm1f

* update tests
This commit is contained in:
Tim Gymnich
2024-07-23 16:29:06 +02:00
committed by GitHub
parent 1fba87b0df
commit 6307d166eb
2 changed files with 2 additions and 1 deletions

View File

@@ -83,6 +83,7 @@ float expm1f(float a) {
r = expm1f_scaled_unchecked(a, 1.0f);
/* handle severe overflow and underflow */
if (abs(a - 1.0f) > 88.0f) {
r = pow(2, a);
r = fma(r, r, -1.0f);
}
return r;