[clang] [flang] [llvm] [openmp] [Flang][OpenMP] Move builtin .mod generation into runtimes (PR #137828)
    Michael Kruse via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Oct 22 08:28:53 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
----------------
Meinersbur wrote:
Workaround for #139297. Will not be necessary after landing #143699. See summary.
https://github.com/llvm/llvm-project/pull/137828
    
    
More information about the llvm-commits
mailing list