[all-commits] [llvm/llvm-project] 4d21e7: [libc][math][c23] Add fmodl and fmodf128 math func...

lntue via All-commits all-commits at lists.llvm.org
Mon Mar 11 13:28:05 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4d21e75210d936d4f05e8aa9ea33beb552cd19b1
      https://github.com/llvm/llvm-project/commit/4d21e75210d936d4f05e8aa9ea33beb552cd19b1
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/generic/FMod.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/fmodf128.h
    A libc/src/math/fmodl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fmodf.cpp
    A libc/src/math/generic/fmodf128.cpp
    A libc/src/math/generic/fmodl.cpp
    M libc/test/src/math/exhaustive/fmod_generic_impl_test.cpp
    M libc/test/src/math/performance_testing/BinaryOpSingleOutputPerf.h
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/fmodf128_perf.cpp
    A libc/test/src/math/performance_testing/fmodl_perf.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/fmodf128_test.cpp
    A libc/test/src/math/smoke/fmodl_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add fmodl and fmodf128 math functions. (#84600)

- Allow `FMod` template to have different computational types and make
it work for 80-bit long double.
- Switch to use `uint64_t` as the intermediate computational types for
`float`, significantly reduce the latency of `fmodf` when the exponent
difference is large.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list