llvm/llvm-project

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

Aperta

#195.400 aperta il 2 mag 2026

 (16 commenti) (0 reazioni) (3 assegnatari)C++ (10.782 fork)batch import
good first issuelibc

Metriche repository

Star
 (26.378 stelle)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

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.

Guida contributor