[all-commits] [llvm/llvm-project] 89ed5b: [libc][math] Added auxiliary function log2_eval fo...

orex via All-commits all-commits at lists.llvm.org
Tue Aug 30 13:40:51 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 89ed5b7c50cd37454cddd433a49e19194ae353ce
      https://github.com/llvm/llvm-project/commit/89ed5b7c50cd37454cddd433a49e19194ae353ce
  Author: Kirill Okhotnikov <okir at google.com>
  Date:   2022-08-30 (Tue, 30 Aug 2022)

  Changed paths:
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/common_constants.cpp
    M libc/src/math/generic/common_constants.h
    M libc/src/math/generic/coshf.cpp
    M libc/src/math/generic/exp2f.cpp
    A libc/src/math/generic/explogxf.cpp
    A libc/src/math/generic/explogxf.h
    R libc/src/math/generic/expxf.h
    M libc/src/math/generic/sinhf.cpp
    M libc/src/math/generic/tanhf.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/explogxf_test.cpp
    R libc/test/src/math/expxf_test.cpp
    A libc/test/src/math/in_float_range_test_helper.h

  Log Message:
  -----------
  [libc][math] Added auxiliary function log2_eval for asinhf/acoshf/atanhf.

1) `double log2_eval(double)` function added with better than float precision is added.
2) Some refactoring done to put all auxiliary functions and corresponding data
to one place to reuse the code.
3) Added tests for new functions.
4) Performance and precision tests of the function shows, that it more precise than exiting log2,
(no exceptional cases), but timing is ~5% higer that on current one.

Differential Revision: https://reviews.llvm.org/D132809


  Commit: 6c1fc7e43033cbab5b16eeb2dee651078d06009d
      https://github.com/llvm/llvm-project/commit/6c1fc7e43033cbab5b16eeb2dee651078d06009d
  Author: Kirill Okhotnikov <okir at google.com>
  Date:   2022-08-30 (Tue, 30 Aug 2022)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/atanhf.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/atanhf.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/atanhf_test.cpp
    M libc/test/src/math/exhaustive/CMakeLists.txt
    A libc/test/src/math/exhaustive/atanhf_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h

  Log Message:
  -----------
  [libc][math] Added atanhf function.

Performance by core-math (core-math/glibc 2.31/current llvm-14):
10.845/43.174/13.467

The review is done on top of D132809.

Differential Revision: https://reviews.llvm.org/D132811


  Commit: 77e1d9beedeccfc0e368b3f34956e12f78d0faa2
      https://github.com/llvm/llvm-project/commit/77e1d9beedeccfc0e368b3f34956e12f78d0faa2
  Author: Kirill Okhotnikov <okir at google.com>
  Date:   2022-08-30 (Tue, 30 Aug 2022)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/x86_64/LongDoubleBits.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/atanf.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/atanf.cpp
    M libc/src/math/generic/explogxf.h
    A libc/src/math/generic/inv_trigf_utils.cpp
    A libc/src/math/generic/inv_trigf_utils.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/atanf_test.cpp
    M libc/test/src/math/exhaustive/CMakeLists.txt
    A libc/test/src/math/exhaustive/atanf_test.cpp
    M libc/test/src/math/explogxf_test.cpp
    A libc/test/src/math/inv_trigf_utils_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h

  Log Message:
  -----------
  [libc][math] Added atanf function.

Performance by core-math (core-math/glibc 2.31/current llvm-14):
28.879/20.843/20.15

Differential Revision: https://reviews.llvm.org/D132842


Compare: https://github.com/llvm/llvm-project/compare/7a7c0697cd97...77e1d9beedec


More information about the All-commits mailing list