[all-commits] [llvm/llvm-project] 6c81b4: [flang] Fold transformational bessels when host ru...

jeanPerier via All-commits all-commits at lists.llvm.org
Fri Apr 22 00:39:12 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6c81b4a01e4956d70dac1a5733c063014e4fbe38
      https://github.com/llvm/llvm-project/commit/6c81b4a01e4956d70dac1a5733c063014e4fbe38
  Author: Jean Perier <jperier at nvidia.com>
  Date:   2022-04-22 (Fri, 22 Apr 2022)

  Changed paths:
    M flang/lib/Evaluate/fold-real.cpp
    M flang/lib/Evaluate/intrinsics-library.cpp
    M flang/test/Evaluate/folding02.f90

  Log Message:
  -----------
  [flang] Fold transformational bessels when host runtime has bessels

Transformational bessel intrinsic functions require the same math runtime
as elemental bessel intrinsics.

Currently elemental bessels could be folded if f18 was linked with pgmath
(cmake -DLIBPGMATH_DIR option). `j0`, `y0`, ... C libm functions were not
used because they are not standard C functions: they are Posix
extensions.

This patch enable:
- Using the Posix bessel host runtime functions when available.
- folding the transformational bessel using the elemental version.

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




More information about the All-commits mailing list