https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115481
--- Comment #4 from Georg-Johann Lay <gjl at gcc dot gnu.org> --- (In reply to dv from comment #0) > New versions of avrlibc provide long double math functions, In the case it matters: 1) avr-libc has long double prototypes in math.h since v2.2. 2a) When long double is a 32-bit type, then the long double functions are implemented in avr-libc as aliases to float functions. 2b) When long double is a 64-bit type, then the long double functions are implemented in avr-libgcc. This requires GCC v10+ and an appropriate configuration (default is long long = 64 bit and switchable to 32 bit) https://gcc.gnu.org/install/configure.html#avr 3) The implementations are not complete, for example log2f is missing, gamma etc. but log2l is available when long long is 64. 4) Available multilib variants ([long] double is 32 and / or 64 bits) can be selected at configure time, and depending on configuration, [long] double layout can also be selected at compile time (-mdouble=64 etc.).