[clang] [flang] [llvm] [openmp] [Flang][OpenMP] Move builtin .mod generation into runtimes (PR #137828)
David Truby via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 21 06:08:26 PDT 2025
================
@@ -336,13 +336,29 @@ end subroutine ieee_get_underflow_mode_l##GKIND;
public :: ieee_get_underflow_mode
#undef IEEE_GET_UNDERFLOW_MODE_L
-#define IEEE_IS_FINITE_R(XKIND) \
- elemental logical function ieee_is_finite_a##XKIND(x); \
- real(XKIND), intent(in) :: x; \
- !dir$ ignore_tkr(d) x; \
- end function ieee_is_finite_a##XKIND;
+! Workaround for https://github.com/llvm/llvm-project/issues/139297
+! #define IEEE_IS_FINITE_R(XKIND) elemental logical function ieee_is_finite_a##XKIND(x); real(XKIND), intent(in) :: x; !dir$ ignore_tkr(d) x; end function ieee_is_finite_a##XKIND;
interface ieee_is_finite
- SPECIFICS_R(IEEE_IS_FINITE_R)
+elemental logical function ieee_is_finite_a2(x); real(2), intent(in) :: x;
+!dir$ ignore_tkr(d) x;
+end function ieee_is_finite_a2;
+elemental logical function ieee_is_finite_a3(x); real(3), intent(in) :: x;
+!dir$ ignore_tkr(d) x;
+end function ieee_is_finite_a3;
+ elemental logical function ieee_is_finite_a4(x); real(4), intent(in) :: x;
+!dir$ ignore_tkr(d) x;
+end function ieee_is_finite_a4;
+elemental logical function ieee_is_finite_a8(x); real(8), intent(in) :: x;
+!dir$ ignore_tkr(d) x;
+end function ieee_is_finite_a8;
+elemental logical function ieee_is_finite_a10(x); real(10), intent(in) :: x;
+!dir$ ignore_tkr(d) x;
+end function ieee_is_finite_a10;
+#if FLANG_SUPPORT_R16
+elemental logical function ieee_is_finite_a16(x); real(16), intent(in) :: x;
+!dir$ ignore_tkr(d) x;
+end function ieee_is_finite_a16;
+#endif
----------------
DavidTruby wrote:
Is this change related to the move of the .mod files? It looks like a separate issue to me
https://github.com/llvm/llvm-project/pull/137828
More information about the llvm-commits
mailing list