llvm / llvm/llvm-project

[libc][math] Add missing isnan variants for float16, bfloat16, and float128

Open
#195,400 16 comments 0 reactions 3 assignees Claimed by @0bVdnt View on GitHub
good first issue libc
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

The current implementations of `isnan` are limited to `float`, `double`, and `long double`. We should add support for the remaining types (`float16`, `bfloat16`, and `float128`).

Additionally, the existing implementations currently rely on `__builtin_isnan`. I think refactoring them to use `fputil` would be better, especially since `issignaling` already uses `fputil`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.