nuttx/libs/libm/libm
Xiang Xiao c32b683085 !compiler: drop CONFIG_HAVE_LONG_LONG and require long long support
Every compiler supported by NuttX provides the "long long" types,
so the CONFIG_HAVE_LONG_LONG indirection is no longer useful.
Remove the option from include/nuttx/compiler.h and treat
"long long" as unconditionally available across the OS.

In addition to deleting the guard itself, this commit unconditionally
enables the long-long flavored helpers that used to be gated behind
it:

  - libs/libc/fixedmath: drop the soft-emulated b32/ub32 routines
    in lib_fixedmath.c (-261 lines) and trim the matching
    prototypes, Make.defs and CMakeLists.txt entries; keep only
    the long-long backed implementations.
  - include/sys/endian.h, include/strings.h, libs/libc/string
    /lib_ffsll.c, lib_flsll.c: always expose the 64-bit byte-swap
    and ffsll/flsll variants.
  - libs/libm/libm/lib_llround{,f,l}.c: drop the empty stubs.
  - libs/libc/stdlib (atoll, llabs, lldiv, strtoll/ull, rand48,
    strtold), libs/libc/stream (libvsprintf, libvscanf,
    libbsprintf, ultoa_invert), libs/libc/misc (crc64, crc64emac),
    libs/libc/inttypes/strtoimax, libs/libc/lzf, libs/libc/libc.csv,
    libs/libc/string (memset, vikmemcpy): remove the
    #ifdef CONFIG_HAVE_LONG_LONG branches.
  - include/{stddef.h,stdlib.h,fixedmath.h,sys/epoll.h,cxx/cstdlib,
    nuttx/audio/audio.h,nuttx/crc64.h,nuttx/lib/math.h,
    nuttx/lib/math32.h,nuttx/lib/stdbit.h}: same guard cleanup.
  - drivers/note/note_driver.c, fs/spiffs/src/spiffs.h,
    sched/irq/irq_procfs.c: drop their local guards as well.
  - Documentation/applications/netutils/ntpclient/index.rst:
    refresh the documentation snippet.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-05-19 16:21:28 +08:00
..
arm libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
__cos.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
__sin.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
CMakeLists.txt libs/xxx/CMakeLists.txt: add cmake compile support 2024-10-16 12:33:54 +08:00
Kconfig libc: Move math library from libs/libc/math to libs/libm/libm 2023-02-23 10:40:07 +02:00
lib_acos.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_acosf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_acosh.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_acoshf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_acoshl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_acosl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_asin.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_asinf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_asinh.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_asinhf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_asinhl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_asinl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atan.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atan2.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atan2f.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atan2l.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atanf.c libm: prevent atanf() yielding NaN for high inputs values. 2026-01-15 16:19:52 -03:00
lib_atanh.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atanhf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atanhl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_atanl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_cbrt.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_ceil.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_ceilf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_ceill.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_copysign.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_copysignf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_copysignl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_cos.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_cosf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_cosh.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_coshf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_coshl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_cosl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_erf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_erfc.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_erfcf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_erfcl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_erff.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_erfl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_exp.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_expf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_expl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_expm1.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_expm1f.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_expm1l.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fabs.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fabsf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fabsl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_floor.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_floorf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_floorl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fmax.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fmaxf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fmaxl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fmin.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fminf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fminl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fmod.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fmodf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_fmodl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_frexp.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_frexpf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_frexpl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_gamma.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_ldexp.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_ldexpf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_ldexpl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_lgamma.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
lib_libexpi.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_libexpif.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_libsqrtapprox.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_llround.c !compiler: drop CONFIG_HAVE_LONG_LONG and require long long support 2026-05-19 16:21:28 +08:00
lib_llroundf.c !compiler: drop CONFIG_HAVE_LONG_LONG and require long long support 2026-05-19 16:21:28 +08:00
lib_llroundl.c !compiler: drop CONFIG_HAVE_LONG_LONG and require long long support 2026-05-19 16:21:28 +08:00
lib_log.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_log2.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_log2f.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_log2l.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_log10.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_log10f.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_log10l.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_logf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_logl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_lround.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_lroundf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_lroundl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_modf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_modff.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_modfl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_nan.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_nanf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_nanl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_pow.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_powf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_powl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_rint.c libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
lib_rintf.c libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
lib_rintl.c libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
lib_round.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_roundf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_roundl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_scalbn.c libc: Move math library from libs/libc/math to libs/libm/libm 2023-02-23 10:40:07 +02:00
lib_scalbnf.c libc: Move math library from libs/libc/math to libs/libm/libm 2023-02-23 10:40:07 +02:00
lib_scalbnl.c libc: Move math library from libs/libc/math to libs/libm/libm 2023-02-23 10:40:07 +02:00
lib_sin.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sincos.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sincosf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sincosl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sinf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sinh.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sinhf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sinhl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sinl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sqrt.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sqrtf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_sqrtl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_tan.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_tanf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_tanh.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_tanhf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_tanhl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_tanl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_trunc.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_truncf.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
lib_truncl.c libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
libm.h libs/libm: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
Make.defs libm: fix typo caused compile failed 2024-11-14 19:38:58 +08:00