[llvm-branch-commits] [libc] [llvm] [libc] Make remainder functions use the emulated float128 type (PR #217578)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Thu Aug 20 03:30:08 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libc
Author: Zorojuro (Sukumarsawant)
<details>
<summary>Changes</summary>
* fmodf128
* remainderf128
* remquof128
---
Full diff: https://github.com/llvm/llvm-project/pull/217578.diff
25 Files Affected:
- (modified) libc/config/baremetal/aarch64/entrypoints.txt (+1-1)
- (modified) libc/config/baremetal/arm/entrypoints.txt (+1-1)
- (modified) libc/config/baremetal/riscv/entrypoints.txt (+1-1)
- (modified) libc/config/darwin/aarch64/entrypoints.txt (+1-1)
- (modified) libc/config/darwin/x86_64/entrypoints.txt (+1)
- (modified) libc/config/freebsd/x86_64/entrypoints.txt (+1-1)
- (modified) libc/config/gpu/amdgpu/entrypoints.txt (+1)
- (modified) libc/config/gpu/nvptx/entrypoints.txt (+1)
- (modified) libc/config/linux/aarch64/entrypoints.txt (+1-1)
- (modified) libc/config/linux/arm/entrypoints.txt (+1)
- (modified) libc/config/linux/riscv/entrypoints.txt (+1-1)
- (modified) libc/config/linux/x86_64/entrypoints.txt (+1-1)
- (modified) libc/config/windows/entrypoints.txt (+1)
- (modified) libc/shared/math/fmodf128.h (-6)
- (modified) libc/src/__support/math/CMakeLists.txt (+1-1)
- (modified) libc/src/__support/math/fmodf128.h (+5-8)
- (modified) libc/src/math/fmodf128.h (+5)
- (modified) libc/src/math/generic/CMakeLists.txt (+1)
- (modified) libc/src/math/generic/fmodf128.cpp (+5-1)
- (modified) libc/test/shared/shared_math_constexpr_test.cpp (+2-2)
- (modified) libc/test/shared/shared_math_test.cpp (+1-1)
- (modified) libc/test/src/math/smoke/CMakeLists.txt (+1)
- (modified) libc/test/src/math/smoke/fmodf128_test.cpp (+5)
- (modified) utils/bazel/llvm-project-overlay/libc/BUILD.bazel (+3-1)
- (modified) utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel (+3)
``````````diff
diff --git a/libc/config/baremetal/aarch64/entrypoints.txt b/libc/config/baremetal/aarch64/entrypoints.txt
index f944fd507e711..a0b541ae6f003 100644
--- a/libc/config/baremetal/aarch64/entrypoints.txt
+++ b/libc/config/baremetal/aarch64/entrypoints.txt
@@ -463,6 +463,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
@@ -764,7 +765,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/baremetal/arm/entrypoints.txt b/libc/config/baremetal/arm/entrypoints.txt
index 2d7f3b456d1a0..7f0c4e5b0fa5d 100644
--- a/libc/config/baremetal/arm/entrypoints.txt
+++ b/libc/config/baremetal/arm/entrypoints.txt
@@ -475,6 +475,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
@@ -775,7 +776,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/baremetal/riscv/entrypoints.txt b/libc/config/baremetal/riscv/entrypoints.txt
index 548ea52e96eaf..72a2bf2c310bd 100644
--- a/libc/config/baremetal/riscv/entrypoints.txt
+++ b/libc/config/baremetal/riscv/entrypoints.txt
@@ -471,6 +471,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
# libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
@@ -772,7 +773,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- # libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/darwin/aarch64/entrypoints.txt b/libc/config/darwin/aarch64/entrypoints.txt
index 492be8088f66f..ac78866b0a928 100644
--- a/libc/config/darwin/aarch64/entrypoints.txt
+++ b/libc/config/darwin/aarch64/entrypoints.txt
@@ -282,6 +282,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
@@ -584,7 +585,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/darwin/x86_64/entrypoints.txt b/libc/config/darwin/x86_64/entrypoints.txt
index feeb568133521..b0ab05b79396b 100644
--- a/libc/config/darwin/x86_64/entrypoints.txt
+++ b/libc/config/darwin/x86_64/entrypoints.txt
@@ -174,6 +174,7 @@ set(TARGET_LIBM_ENTRYPOINTS
#libc.src.math.fminl
#libc.src.math.fmod
#libc.src.math.fmodf
+ #libc.src.math.fmodf128
#libc.src.math.frexp
#libc.src.math.frexpf
#libc.src.math.frexpl
diff --git a/libc/config/freebsd/x86_64/entrypoints.txt b/libc/config/freebsd/x86_64/entrypoints.txt
index 8e71db9b4996d..716110fd2c452 100644
--- a/libc/config/freebsd/x86_64/entrypoints.txt
+++ b/libc/config/freebsd/x86_64/entrypoints.txt
@@ -217,6 +217,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fmul
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.frexp
libc.src.math.frexpf
@@ -523,7 +524,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/gpu/amdgpu/entrypoints.txt b/libc/config/gpu/amdgpu/entrypoints.txt
index 9b9fb891f9b2b..943d52e9ebc5a 100644
--- a/libc/config/gpu/amdgpu/entrypoints.txt
+++ b/libc/config/gpu/amdgpu/entrypoints.txt
@@ -410,6 +410,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
diff --git a/libc/config/gpu/nvptx/entrypoints.txt b/libc/config/gpu/nvptx/entrypoints.txt
index 8b861abc30550..49505ec03a9f1 100644
--- a/libc/config/gpu/nvptx/entrypoints.txt
+++ b/libc/config/gpu/nvptx/entrypoints.txt
@@ -406,6 +406,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
diff --git a/libc/config/linux/aarch64/entrypoints.txt b/libc/config/linux/aarch64/entrypoints.txt
index 86c992aea86da..68890c58e028f 100644
--- a/libc/config/linux/aarch64/entrypoints.txt
+++ b/libc/config/linux/aarch64/entrypoints.txt
@@ -622,6 +622,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
@@ -917,7 +918,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/linux/arm/entrypoints.txt b/libc/config/linux/arm/entrypoints.txt
index 18e557fd7eefe..a676d6f1b9317 100644
--- a/libc/config/linux/arm/entrypoints.txt
+++ b/libc/config/linux/arm/entrypoints.txt
@@ -450,6 +450,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmul
libc.src.math.frexp
libc.src.math.frexpf
diff --git a/libc/config/linux/riscv/entrypoints.txt b/libc/config/linux/riscv/entrypoints.txt
index cd8afd64aee77..c2f894801f05b 100644
--- a/libc/config/linux/riscv/entrypoints.txt
+++ b/libc/config/linux/riscv/entrypoints.txt
@@ -690,6 +690,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
@@ -1002,7 +1003,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/linux/x86_64/entrypoints.txt b/libc/config/linux/x86_64/entrypoints.txt
index d4b12dc3443af..7747f5397d4f5 100644
--- a/libc/config/linux/x86_64/entrypoints.txt
+++ b/libc/config/linux/x86_64/entrypoints.txt
@@ -700,6 +700,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fminl
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.fmul
libc.src.math.fmull
@@ -1012,7 +1013,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.faddf128
libc.src.math.fdivf128
libc.src.math.ffmaf128
- libc.src.math.fmodf128
libc.src.math.fmulf128
libc.src.math.frexpf128
libc.src.math.fromfpf128
diff --git a/libc/config/windows/entrypoints.txt b/libc/config/windows/entrypoints.txt
index c83486ff1eb17..77c7daaf7bcb8 100644
--- a/libc/config/windows/entrypoints.txt
+++ b/libc/config/windows/entrypoints.txt
@@ -250,6 +250,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.fmul
libc.src.math.fmod
libc.src.math.fmodf
+ libc.src.math.fmodf128
libc.src.math.fmodl
libc.src.math.frexp
libc.src.math.frexpf
diff --git a/libc/shared/math/fmodf128.h b/libc/shared/math/fmodf128.h
index 0000893546763..97bee8e09dca8 100644
--- a/libc/shared/math/fmodf128.h
+++ b/libc/shared/math/fmodf128.h
@@ -9,10 +9,6 @@
#ifndef LLVM_LIBC_SHARED_MATH_FMODF128_H
#define LLVM_LIBC_SHARED_MATH_FMODF128_H
-#include "include/llvm-libc-types/float128.h"
-
-#ifdef LIBC_TYPES_HAS_NATIVE_FLOAT128
-
#include "shared/libc_common.h"
#include "src/__support/math/fmodf128.h"
@@ -24,6 +20,4 @@ using math::fmodf128;
} // namespace shared
} // namespace LIBC_NAMESPACE_DECL
-#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
-
#endif // LLVM_LIBC_SHARED_MATH_FMODF128_H
diff --git a/libc/src/__support/math/CMakeLists.txt b/libc/src/__support/math/CMakeLists.txt
index 8b1e34eea2522..9756ad43bcd21 100644
--- a/libc/src/__support/math/CMakeLists.txt
+++ b/libc/src/__support/math/CMakeLists.txt
@@ -1426,7 +1426,7 @@ add_header_library(
HDRS
fmodf128.h
DEPENDS
- libc.include.llvm-libc-types.float128
+ libc.src.__support.FPUtil.float128
libc.src.__support.FPUtil.generic.fmod
libc.src.__support.macros.config
)
diff --git a/libc/src/__support/math/fmodf128.h b/libc/src/__support/math/fmodf128.h
index 7ed105b81af48..5a1b29c1997bc 100644
--- a/libc/src/__support/math/fmodf128.h
+++ b/libc/src/__support/math/fmodf128.h
@@ -9,23 +9,20 @@
#ifndef LLVM_LIBC_SRC___SUPPORT_MATH_FMODF128_H
#define LLVM_LIBC_SRC___SUPPORT_MATH_FMODF128_H
-#include "include/llvm-libc-types/float128.h"
-
-#ifdef LIBC_TYPES_HAS_NATIVE_FLOAT128
-
+#include "src/__support/FPUtil/float128.h"
#include "src/__support/FPUtil/generic/FMod.h"
#include "src/__support/macros/config.h"
namespace LIBC_NAMESPACE_DECL {
namespace math {
-LIBC_INLINE constexpr float128 fmodf128(float128 x, float128 y) {
- return fputil::generic::FMod<float128>::eval(x, y);
+using LIBC_NAMESPACE::fputil::Float128;
+
+LIBC_INLINE constexpr Float128 fmodf128(Float128 x, Float128 y) {
+ return fputil::generic::FMod<Float128>::eval(x, y);
}
} // namespace math
} // namespace LIBC_NAMESPACE_DECL
-#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
-
#endif // LLVM_LIBC_SRC___SUPPORT_MATH_FMODF128_H
diff --git a/libc/src/math/fmodf128.h b/libc/src/math/fmodf128.h
index 908fc61a19497..4e18c34c5a83b 100644
--- a/libc/src/math/fmodf128.h
+++ b/libc/src/math/fmodf128.h
@@ -9,11 +9,16 @@
#ifndef LLVM_LIBC_SRC_MATH_FMODF128_H
#define LLVM_LIBC_SRC_MATH_FMODF128_H
+#include "src/__support/FPUtil/float128.h"
#include "src/__support/macros/config.h"
#include "src/__support/macros/properties/types.h"
namespace LIBC_NAMESPACE_DECL {
+#ifndef LIBC_TYPES_HAS_NATIVE_FLOAT128
+using float128 = LIBC_NAMESPACE::fputil::Float128;
+#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
+
float128 fmodf128(float128 x, float128 y);
} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/src/math/generic/CMakeLists.txt b/libc/src/math/generic/CMakeLists.txt
index 3925affb9cf72..5df4c25e84905 100644
--- a/libc/src/math/generic/CMakeLists.txt
+++ b/libc/src/math/generic/CMakeLists.txt
@@ -3454,6 +3454,7 @@ add_entrypoint_object(
HDRS
../fmodf128.h
DEPENDS
+ libc.src.__support.CPP.bit
libc.src.__support.math.fmodf128
)
diff --git a/libc/src/math/generic/fmodf128.cpp b/libc/src/math/generic/fmodf128.cpp
index c72ec7ec1cdf5..fb22a165b2aa8 100644
--- a/libc/src/math/generic/fmodf128.cpp
+++ b/libc/src/math/generic/fmodf128.cpp
@@ -7,12 +7,16 @@
//===----------------------------------------------------------------------===//
#include "src/math/fmodf128.h"
+#include "src/__support/CPP/bit.h"
#include "src/__support/math/fmodf128.h"
namespace LIBC_NAMESPACE_DECL {
+using LIBC_NAMESPACE::fputil::Float128;
+
LLVM_LIBC_FUNCTION(float128, fmodf128, (float128 x, float128 y)) {
- return math::fmodf128(x, y);
+ return cpp::bit_cast<float128>(
+ math::fmodf128(cpp::bit_cast<Float128>(x), cpp::bit_cast<Float128>(y)));
}
} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/test/shared/shared_math_constexpr_test.cpp b/libc/test/shared/shared_math_constexpr_test.cpp
index db8a949b76c73..f1812ea4598db 100644
--- a/libc/test/shared/shared_math_constexpr_test.cpp
+++ b/libc/test/shared/shared_math_constexpr_test.cpp
@@ -381,6 +381,8 @@ static_assert(0 == LIBC_NAMESPACE::shared::isnanl(0.0L));
//===----------------------------------------------------------------------===//
static_assert(Float128(0.0) == LIBC_NAMESPACE::shared::ceilf128(Float128(0.0)));
+static_assert(0 ==
+ LIBC_NAMESPACE::shared::fmodf128(Float128(4.0), Float128(2.0)));
static_assert(Float128(0.0) ==
LIBC_NAMESPACE::shared::copysignf128(Float128(0.0),
Float128(0.0)));
@@ -470,8 +472,6 @@ constexpr float128 TOTALORDERMAGF128_Y = float128(0.0);
static_assert(1 ==
LIBC_NAMESPACE::shared::totalordermagf128(&TOTALORDERMAGF128_X,
&TOTALORDERMAGF128_Y));
-static_assert(0 ==
- LIBC_NAMESPACE::shared::fmodf128(float128(4.0), float128(2.0)));
static_assert(float128(0.0) == [] {
float128 iptr{};
return LIBC_NAMESPACE::shared::modff128(float128(0.0), &iptr);
diff --git a/libc/test/shared/shared_math_test.cpp b/libc/test/shared/shared_math_test.cpp
index 5e69673154ea6..2da09d2f1dbc7 100644
--- a/libc/test/shared/shared_math_test.cpp
+++ b/libc/test/shared/shared_math_test.cpp
@@ -587,6 +587,7 @@ TEST(LlvmLibcSharedMathTest, AllEmuFloat128) {
EXPECT_FP_EQ(Float128(0.0),
LIBC_NAMESPACE::shared::atan2f128(Float128(0.0), Float128(0.0)));
EXPECT_FP_EQ(Float128(0.0), LIBC_NAMESPACE::shared::ceilf128(Float128(0.0)));
+ LIBC_NAMESPACE::shared::fmodf128(Float128(1.0), Float128(1.0));
EXPECT_FP_EQ(Float128(0.0), LIBC_NAMESPACE::shared::copysignf128(
Float128(0.0), Float128(0.0)));
EXPECT_FP_EQ(Float128(0.0), LIBC_NAMESPACE::shared::fabsf128(Float128(0.0)));
@@ -728,7 +729,6 @@ TEST(LlvmLibcSharedMathTest, AllFloat128) {
float128 totalordermagf128_y = float128(0.0);
EXPECT_EQ(1, LIBC_NAMESPACE::shared::totalordermagf128(&totalordermagf128_x,
&totalordermagf128_y));
- LIBC_NAMESPACE::shared::fmodf128(float128(1.0), float128(1.0));
float128 modff128_iptr = float128(0.0);
EXPECT_FP_EQ(float128(0.0),
LIBC_NAMESPACE::shared::modff128(float128(0.0), &modff128_iptr));
diff --git a/libc/test/src/math/smoke/CMakeLists.txt b/libc/test/src/math/smoke/CMakeLists.txt
index b0cb51db79482..45b90795bbb17 100644
--- a/libc/test/src/math/smoke/CMakeLists.txt
+++ b/libc/test/src/math/smoke/CMakeLists.txt
@@ -4674,6 +4674,7 @@ add_fp_unittest(
DEPENDS
libc.hdr.errno_macros
libc.hdr.fenv_macros
+ libc.src.__support.FPUtil.float128
libc.src.math.fmodf128
libc.src.__support.FPUtil.fenv_impl
# FIXME: Currently fails on the GPU build.
diff --git a/libc/test/src/math/smoke/fmodf128_test.cpp b/libc/test/src/math/smoke/fmodf128_test.cpp
index f75aadac84386..2afae9b9e98f4 100644
--- a/libc/test/src/math/smoke/fmodf128_test.cpp
+++ b/libc/test/src/math/smoke/fmodf128_test.cpp
@@ -7,7 +7,12 @@
//===----------------------------------------------------------------------===//
#include "FModTest.h"
+#include "src/__support/FPUtil/float128.h"
#include "src/math/fmodf128.h"
+#ifndef LIBC_TYPES_HAS_NATIVE_FLOAT128
+using float128 = LIBC_NAMESPACE::fputil::Float128;
+#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
+
LIST_FMOD_TESTS(float128, LIBC_NAMESPACE::fmodf128)
diff --git a/utils/bazel/llvm-project-overlay/libc/BUILD.bazel b/utils/bazel/llvm-project-overlay/libc/BUILD.bazel
index 2f2c5655bf21c..3e267d039f76e 100644
--- a/utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/libc/BUILD.bazel
@@ -5937,9 +5937,9 @@ libc_support_library(
name = "__support_math_fmodf128",
hdrs = ["src/__support/math/fmodf128.h"],
deps = [
+ ":__support_fputil_float128",
":__support_fputil_generic_fmod",
":__support_macros_config",
- ":llvm_libc_types_float128",
],
)
@@ -12179,6 +12179,8 @@ libc_math_function(
libc_math_function(
name = "fmodf128",
additional_deps = [
+ ":__support_cpp_bit",
+ ":__support_fputil_float128",
":__support_math_fmodf128",
],
)
diff --git a/utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel b/utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
index e82f9730fd6b4..f943fc2df4f14 100644
--- a/utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
@@ -831,6 +831,9 @@ math_test(
math_test(
name = "fmodf128",
hdrs = ["FModTest.h"],
+ deps = [
+ "//libc:__support_fputil_float128",
+ ],
)
math_test(
``````````
</details>
https://github.com/llvm/llvm-project/pull/217578
More information about the llvm-branch-commits
mailing list