[llvm] [CMake] Factor check- target deps to reduce build.ninja size by 45% (PR #223592)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 15 05:07:55 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-llvm-support
Author: Reid Kleckner (rnk)
<details>
<summary>Changes</summary>
Many LLVM developers are not aware, but our lit CMake logic creates a check-* target for every eligible subdirectory inside a lit test suite. There are thousands of these targets; in the benchmark configuration:
```
❯ ninja -C build -t targets all | grep '^check-' | wc -l
2667
```
Chris Bieneman originally added this feature in March 2015. The original change suppressed these targets for Xcode and Visual Studio because the target clutter hurt IDE usability; rL344555 later generalized that behavior behind LLVM_ENABLE_IDE.
When using the Ninja generator, each of these check-${proj}-${subdir} targets repeats its suite's transitive test dependencies, like so:
```
build .../check-clang-sema-aarch64: \
bin/FileCheck bin/apinotes-test bin/c-index-test bin/clang \
bin/clang-check bin/clang-diff bin/clang-extdef-mapping \
bin/clang-fuzzer-dictionary bin/clang-import-test \
... \
bin/count bin/diagtool bin/llc bin/lld bin/llvm-ar bin/llvm-as \
bin/llvm-bcanalyzer bin/llvm-cat bin/llvm-config bin/llvm-cxxfilt \
...
```
In a large LLVM configuration this accounts for tens of megabytes of generated Ninja input and 30% of Ninja generation time.
For the single-config Ninja generator with CMake 3.27 and newer, this change factors the dependencies behind a stamp file. The makefile generator doesn't repeat transitive target dependencies the same way, so it and other generators retain the existing implementation.
This feature relies on the CMake 3.27 feature DEPENDS_EXPLICIT_ONLY: https://cmake.org/cmake/help/v3.27/command/add_custom_command.html#command:add_custom_command We are raising the minimum to 3.31 soon, so this won't be relevant for very long.
Fresh-configure benchmark using CMake 3.31.12 and Ninja 1.10.2 with the same Release configuration and LLVM, Clang, clang-tools-extra, LLD, MLIR, Flang, and Polly enabled:
| Metric | Before | After | Change |
|----------------------|--------------:|--------------:|-----------------------:|
| Configure | 22.8 s | 21.9 s | -0.9 s (-3.9%) |
| Generate | 13.2 s | 9.2 s | -4.0 s (-30.3%) |
| Wall time | 37.63 s | 32.23 s | -5.40 s (-14.4%) |
| build.ninja | 171,227,951 B | 93,102,750 B | -78,125,201 B (-45.6%) |
| rules.ninja | 1,048,691 B | 1,048,691 B | unchanged |
| Combined Ninja files | 172,276,642 B | 94,151,441 B | -78,125,201 B (-45.3%) |
As a rough estimate of the cost of the entire per-directory target feature, I also ran a fresh configure with LLVM_ENABLE_IDE=ON, which skips add_lit_testsuites as well as some other non-IDE targets. The normal optimized configuration took 11.4 s to configure, 5.3 s to generate, and 17.32 s wall time; IDE mode took 10.5 s, 4.3 s, and 16.04 s respectively. The delta suggests that the entire feature now costs at most 1.3 s wall time, so it seems worth keeping.
The per-directory check-* entry points are not exercised by pre-merge, so I manually tested these:
- check-llvm-assembler: 535 passed.
- check-clang-lexer: 142 passed, 6 unsupported.
- check-mlir-ir: 114 passed.
- check-flang-parser: 204 passed.
Assisted-by: Codex
---
Full diff: https://github.com/llvm/llvm-project/pull/223592.diff
11 Files Affected:
- (modified) llvm/cmake/config-ix.cmake (-15)
- (modified) llvm/cmake/modules/AddLLVM.cmake (+62-12)
- (modified) llvm/include/llvm/Config/config.h.cmake (-17)
- (modified) llvm/lib/Analysis/ConstantFolding.cpp (+2-2)
- (modified) llvm/lib/Support/PrettyStackTrace.cpp (+4-3)
- (modified) llvm/lib/Support/Unix/Path.inc (-10)
- (modified) llvm/lib/Support/Valgrind.cpp (+6-8)
- (modified) llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn (-6)
- (modified) utils/bazel/llvm-project-overlay/llvm/config.bzl (+4-9)
- (modified) utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h (-17)
- (modified) utils/bazel/llvm_configs/config.h.cmake (-17)
``````````diff
diff --git a/llvm/cmake/config-ix.cmake b/llvm/cmake/config-ix.cmake
index ab02554af0b53..1e33b4795fee5 100644
--- a/llvm/cmake/config-ix.cmake
+++ b/llvm/cmake/config-ix.cmake
@@ -98,9 +98,6 @@ if(LLVM_USING_GLIBC AND CMAKE_SIZEOF_VOID_P EQUAL 4)
endif()
# include checks
-check_include_file(valgrind/valgrind.h HAVE_VALGRIND_VALGRIND_H)
-check_symbol_exists(FE_ALL_EXCEPT "fenv.h" HAVE_DECL_FE_ALL_EXCEPT)
-check_symbol_exists(FE_INEXACT "fenv.h" HAVE_DECL_FE_INEXACT)
check_c_source_compiles("
#if __has_attribute(used)
#define LLVM_ATTRIBUTE_USED __attribute__((__used__))
@@ -113,7 +110,6 @@ check_c_source_compiles("
int main(void) { return 0; }"
HAVE_BUILTIN_THREAD_POINTER)
-check_include_file(CrashReporterClient.h HAVE_CRASHREPORTERCLIENT_H)
if(APPLE)
check_c_source_compiles("
static const char *__crashreporter_info__ = 0;
@@ -122,27 +118,16 @@ if(APPLE)
HAVE_CRASHREPORTER_INFO)
endif()
-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
- check_include_file(linux/magic.h HAVE_LINUX_MAGIC_H)
- if(NOT HAVE_LINUX_MAGIC_H)
- # older kernels use split files
- check_include_file(linux/nfs_fs.h HAVE_LINUX_NFS_FS_H)
- check_include_file(linux/smb.h HAVE_LINUX_SMB_H)
- endif()
-endif()
-
# library checks
if(NOT WIN32)
check_library_exists(pthread pthread_create "" HAVE_LIBPTHREAD)
if (HAVE_LIBPTHREAD)
check_library_exists(pthread pthread_rwlock_init "" HAVE_PTHREAD_RWLOCK_INIT)
- check_library_exists(pthread pthread_mutex_lock "" HAVE_PTHREAD_MUTEX_LOCK)
else()
# this could be Android
check_library_exists(c pthread_create "" PTHREAD_IN_LIBC)
if (PTHREAD_IN_LIBC)
check_library_exists(c pthread_rwlock_init "" HAVE_PTHREAD_RWLOCK_INIT)
- check_library_exists(c pthread_mutex_lock "" HAVE_PTHREAD_MUTEX_LOCK)
endif()
endif()
endif()
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
index 3169756c0f28a..480a2183f42cb 100644
--- a/llvm/cmake/modules/AddLLVM.cmake
+++ b/llvm/cmake/modules/AddLLVM.cmake
@@ -2368,10 +2368,9 @@ function(get_llvm_lit_path base_dir file_name)
set(${base_dir} ${LLVM_LIT_BASE_DIR} PARENT_SCOPE)
endfunction()
-# A raw function to create a lit target. This is used to implement the testuite
-# management functions.
-function(add_lit_target target comment)
- cmake_parse_arguments(ARG "" "" "PARAMS;DEPENDS;ARGS" ${ARGN})
+# Construct the command used to run a lit test suite.
+function(get_llvm_lit_command output)
+ cmake_parse_arguments(ARG "" "" "PARAMS;ARGS" ${ARGN})
set(LIT_ARGS "${ARG_ARGS} ${LLVM_LIT_ARGS}")
separate_arguments(LIT_ARGS)
if (NOT CMAKE_CFG_INTDIR STREQUAL ".")
@@ -2391,6 +2390,14 @@ function(add_lit_target target comment)
foreach(param ${ARG_PARAMS})
list(APPEND LIT_COMMAND --param ${param})
endforeach()
+ set(${output} ${LIT_COMMAND} PARENT_SCOPE)
+endfunction()
+
+# A raw function to create a lit target. This is used to implement the testuite
+# management functions.
+function(add_lit_target target comment)
+ cmake_parse_arguments(ARG "" "" "PARAMS;DEPENDS;ARGS" ${ARGN})
+ get_llvm_lit_command(LIT_COMMAND PARAMS ${ARG_PARAMS} ARGS ${ARG_ARGS})
if (ARG_UNPARSED_ARGUMENTS)
add_custom_target(${target}
COMMAND ${LIT_COMMAND} ${ARG_UNPARSED_ARGUMENTS}
@@ -2495,6 +2502,31 @@ function(add_lit_testsuites project directory)
set(ARG_FOLDER "${subproject_title}/Tests/LIT Testsuites")
endif()
+ # CMake expands the transitive closure of a custom target's dependencies
+ # onto every custom command that depends on it. For large lit test suites,
+ # repeating the full tool dependency list on every per-directory check
+ # target makes the generated Ninja file unnecessarily large. A symbolic
+ # custom command output can be named directly on Ninja's command line, so
+ # use one shared stamp to represent the dependency closure and make each
+ # check command depend only on that stamp.
+ set(use_factored_lit_dependencies OFF)
+ # TODO: Remove the CMake version fallback once LLVM requires CMake 3.31.
+ if (CMAKE_GENERATOR STREQUAL "Ninja" AND
+ CMAKE_VERSION VERSION_GREATER_EQUAL 3.27)
+ set(use_factored_lit_dependencies ON)
+ string(SHA1 lit_testsuites_id
+ "${CMAKE_CURRENT_BINARY_DIR};${project};${directory}")
+ set(lit_deps_stamp
+ "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${lit_testsuites_id}.stamp")
+ add_custom_command(OUTPUT ${lit_deps_stamp}
+ COMMAND ${CMAKE_COMMAND} -E touch ${lit_deps_stamp}
+ DEPENDS ${ARG_DEPENDS}
+ COMMENT "Building ${project} lit test dependencies"
+ )
+ get_llvm_lit_command(LIT_COMMAND PARAMS ${ARG_PARAMS} ARGS ${ARG_ARGS})
+ set(lit_test_outputs)
+ endif()
+
# Search recursively for test directories by assuming anything not
# in a directory called Inputs contains tests.
file(GLOB_RECURSE to_process LIST_DIRECTORIES true ${directory}/*)
@@ -2529,16 +2561,34 @@ function(add_lit_testsuites project directory)
if (ARG_BINARY_DIR)
set(lit_args ${ARG_BINARY_DIR} --filter=${filter})
endif()
- add_lit_target("check-${name_var}" "Running lit suite ${lit_suite}"
- ${lit_args}
- ${EXCLUDE_FROM_CHECK_ALL}
- PARAMS ${ARG_PARAMS}
- DEPENDS ${ARG_DEPENDS}
- ARGS ${ARG_ARGS}
- )
- set_target_properties(check-${name_var} PROPERTIES FOLDER ${ARG_FOLDER})
+ if (use_factored_lit_dependencies)
+ set(lit_test_output "${CMAKE_BINARY_DIR}/check-${name_var}")
+ add_custom_command(OUTPUT ${lit_test_output}
+ COMMAND ${LIT_COMMAND} ${lit_args}
+ DEPENDS ${lit_deps_stamp}
+ DEPENDS_EXPLICIT_ONLY
+ COMMENT "Running lit suite ${lit_suite}"
+ USES_TERMINAL
+ )
+ set_source_files_properties(${lit_test_output} PROPERTIES SYMBOLIC TRUE)
+ list(APPEND lit_test_outputs ${lit_test_output})
+ else()
+ add_lit_target("check-${name_var}" "Running lit suite ${lit_suite}"
+ ${lit_args}
+ ${EXCLUDE_FROM_CHECK_ALL}
+ PARAMS ${ARG_PARAMS}
+ DEPENDS ${ARG_DEPENDS}
+ ARGS ${ARG_ARGS}
+ )
+ set_target_properties(check-${name_var} PROPERTIES FOLDER ${ARG_FOLDER})
+ endif()
endif()
endforeach()
+
+ if (use_factored_lit_dependencies)
+ add_custom_target(lit-testsuites-${lit_testsuites_id}
+ DEPENDS ${lit_test_outputs})
+ endif()
endif()
endfunction()
diff --git a/llvm/include/llvm/Config/config.h.cmake b/llvm/include/llvm/Config/config.h.cmake
index 94fde52de11b3..34635c292e089 100644
--- a/llvm/include/llvm/Config/config.h.cmake
+++ b/llvm/include/llvm/Config/config.h.cmake
@@ -28,9 +28,6 @@
#define BACKTRACE_HEADER <${BACKTRACE_HEADER}>
-/* Define to 1 if you have the <CrashReporterClient.h> header file. */
-#cmakedefine HAVE_CRASHREPORTERCLIENT_H
-
/* can use __crashreporter_info__ */
#cmakedefine01 HAVE_CRASHREPORTER_INFO
@@ -38,14 +35,6 @@
don't. */
#cmakedefine01 HAVE_DECL_ARC4RANDOM
-/* Define to 1 if you have the declaration of `FE_ALL_EXCEPT', and to 0 if you
- don't. */
-#cmakedefine01 HAVE_DECL_FE_ALL_EXCEPT
-
-/* Define to 1 if you have the declaration of `FE_INEXACT', and to 0 if you
- don't. */
-#cmakedefine01 HAVE_DECL_FE_INEXACT
-
/* Define to 1 if you have the declaration of `strerror_s', and to 0 if you
don't. */
#cmakedefine01 HAVE_DECL_STRERROR_S
@@ -140,9 +129,6 @@
/* Define to 1 if you have the <pthread.h> header file. */
#cmakedefine HAVE_PTHREAD_H ${HAVE_PTHREAD_H}
-/* Have pthread_mutex_lock */
-#cmakedefine HAVE_PTHREAD_MUTEX_LOCK ${HAVE_PTHREAD_MUTEX_LOCK}
-
/* Have pthread_rwlock_init */
#cmakedefine HAVE_PTHREAD_RWLOCK_INIT ${HAVE_PTHREAD_RWLOCK_INIT}
@@ -176,9 +162,6 @@
/* Define to 1 if you have the <unistd.h> header file. */
#cmakedefine HAVE_UNISTD_H ${HAVE_UNISTD_H}
-/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
-#cmakedefine HAVE_VALGRIND_VALGRIND_H ${HAVE_VALGRIND_VALGRIND_H}
-
/* Have host's _alloca */
#cmakedefine HAVE__ALLOCA ${HAVE__ALLOCA}
diff --git a/llvm/lib/Analysis/ConstantFolding.cpp b/llvm/lib/Analysis/ConstantFolding.cpp
index aca2556cd48eb..c0f64c76cf54f 100644
--- a/llvm/lib/Analysis/ConstantFolding.cpp
+++ b/llvm/lib/Analysis/ConstantFolding.cpp
@@ -2237,7 +2237,7 @@ Constant *GetConstantFoldFPValue128(float128 V, Type *Ty) {
/// Clear the floating-point exception state.
inline void llvm_fenv_clearexcept() {
-#if HAVE_DECL_FE_ALL_EXCEPT
+#if defined(FE_ALL_EXCEPT)
feclearexcept(FE_ALL_EXCEPT);
#endif
errno = 0;
@@ -2248,7 +2248,7 @@ inline bool llvm_fenv_testexcept() {
int errno_val = errno;
if (errno_val == ERANGE || errno_val == EDOM)
return true;
-#if HAVE_DECL_FE_ALL_EXCEPT && HAVE_DECL_FE_INEXACT
+#if defined(FE_ALL_EXCEPT) && defined(FE_INEXACT)
if (fetestexcept(FE_ALL_EXCEPT & ~FE_INEXACT))
return true;
#endif
diff --git a/llvm/lib/Support/PrettyStackTrace.cpp b/llvm/lib/Support/PrettyStackTrace.cpp
index eff99473b2057..6a4de8d9460fc 100644
--- a/llvm/lib/Support/PrettyStackTrace.cpp
+++ b/llvm/lib/Support/PrettyStackTrace.cpp
@@ -31,8 +31,9 @@
#include <cstring>
#include <tuple>
-#ifdef HAVE_CRASHREPORTERCLIENT_H
+#if __has_include(<CrashReporterClient.h>)
#include <CrashReporterClient.h>
+#define LLVM_HAVE_CRASHREPORTERCLIENT_H
#endif
using namespace llvm;
@@ -110,7 +111,7 @@ static void PrintCurStackTrace(raw_ostream &OS) {
}
// Integrate with crash reporter libraries.
-#if defined (__APPLE__) && defined(HAVE_CRASHREPORTERCLIENT_H)
+#if defined(__APPLE__) && defined(LLVM_HAVE_CRASHREPORTERCLIENT_H)
// If any clients of llvm try to link to libCrashReporterClient.a themselves,
// only one crash info struct will be used.
extern "C" {
@@ -143,7 +144,7 @@ asm(".desc ___crashreporter_info__, 0x10");
[[maybe_unused]] static void setCrashLogMessage(const char *msg);
static void setCrashLogMessage(const char *msg) {
-#ifdef HAVE_CRASHREPORTERCLIENT_H
+#ifdef LLVM_HAVE_CRASHREPORTERCLIENT_H
(void)CRSetCrashLogMessage(msg);
#elif HAVE_CRASHREPORTER_INFO
__crashreporter_info__ = msg;
diff --git a/llvm/lib/Support/Unix/Path.inc b/llvm/lib/Support/Unix/Path.inc
index 0da715279f329..44bc0d30b2fc2 100644
--- a/llvm/lib/Support/Unix/Path.inc
+++ b/llvm/lib/Support/Unix/Path.inc
@@ -83,16 +83,6 @@ extern char **environ;
#include <sys/mount.h>
#include <sys/param.h>
#elif defined(__linux__) || defined(__managarm__)
-#if defined(HAVE_LINUX_MAGIC_H)
-#include <linux/magic.h>
-#else
-#if defined(HAVE_LINUX_NFS_FS_H)
-#include <linux/nfs_fs.h>
-#endif
-#if defined(HAVE_LINUX_SMB_H)
-#include <linux/smb.h>
-#endif
-#endif
#include <sys/vfs.h>
#elif defined(_AIX)
#include <sys/statfs.h>
diff --git a/llvm/lib/Support/Valgrind.cpp b/llvm/lib/Support/Valgrind.cpp
index 5994656c5c031..8553e83d49d0b 100644
--- a/llvm/lib/Support/Valgrind.cpp
+++ b/llvm/lib/Support/Valgrind.cpp
@@ -6,17 +6,15 @@
//
//===----------------------------------------------------------------------===//
//
-// Defines Valgrind communication methods, if HAVE_VALGRIND_VALGRIND_H is
-// defined. If we have valgrind.h but valgrind isn't running, its macros are
-// no-ops.
+// Defines Valgrind communication methods if valgrind.h is available. If we
+// have valgrind.h but valgrind isn't running, its macros are no-ops.
//
//===----------------------------------------------------------------------===//
-#include <stddef.h>
#include "llvm/Support/Valgrind.h"
-#include "llvm/Config/config.h"
+#include <stddef.h>
-#if HAVE_VALGRIND_VALGRIND_H
+#if __has_include(<valgrind/valgrind.h>)
#include <valgrind/valgrind.h>
bool llvm::sys::RunningOnValgrind() {
@@ -27,7 +25,7 @@ void llvm::sys::ValgrindDiscardTranslations(const void *Addr, size_t Len) {
VALGRIND_DISCARD_TRANSLATIONS(Addr, Len);
}
-#else // !HAVE_VALGRIND_VALGRIND_H
+#else
bool llvm::sys::RunningOnValgrind() {
return false;
@@ -36,4 +34,4 @@ bool llvm::sys::RunningOnValgrind() {
void llvm::sys::ValgrindDiscardTranslations(const void *Addr, size_t Len) {
}
-#endif // !HAVE_VALGRIND_VALGRIND_H
+#endif
diff --git a/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn b/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
index 5678886ea7183..3c6e08064cbcf 100644
--- a/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
+++ b/llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
@@ -88,9 +88,6 @@ write_cmake_config("config") {
"ENABLE_CRASH_OVERRIDES=1",
"BACKTRACE_HEADER=execinfo.h",
"HAVE_BUILTIN_THREAD_POINTER=",
- "HAVE_CRASHREPORTERCLIENT_H=",
- "HAVE_DECL_FE_ALL_EXCEPT=1",
- "HAVE_DECL_FE_INEXACT=1",
"LLVM_ENABLE_CRASH_DUMPS=",
"HAVE_FFI_CALL=",
"HAVE_FFI_FFI_H=",
@@ -102,7 +99,6 @@ write_cmake_config("config") {
"HAVE_MALLCTL=",
"HAVE_PTHREAD_GET_NAME_NP=",
"HAVE_PTHREAD_SET_NAME_NP=",
- "HAVE_VALGRIND_VALGRIND_H=",
"HAVE_WINDOWS_ICU=",
"HAVE__ALLOCA=",
"HAVE___ALLOCA=",
@@ -218,7 +214,6 @@ write_cmake_config("config") {
"HAVE_PTHREAD_SETNAME_NP=",
"HAVE_PREAD=",
"HAVE_PTHREAD_H=",
- "HAVE_PTHREAD_MUTEX_LOCK=",
"HAVE_PTHREAD_RWLOCK_INIT=",
"HAVE_SBRK=",
"HAVE_SETENV=",
@@ -246,7 +241,6 @@ write_cmake_config("config") {
"HAVE_PTHREAD_SETNAME_NP=1",
"HAVE_PREAD=1",
"HAVE_PTHREAD_H=1",
- "HAVE_PTHREAD_MUTEX_LOCK=1",
"HAVE_PTHREAD_RWLOCK_INIT=1",
"HAVE_SBRK=1",
"HAVE_SETENV=1",
diff --git a/utils/bazel/llvm-project-overlay/llvm/config.bzl b/utils/bazel/llvm-project-overlay/llvm/config.bzl
index dcb19992321a6..6ceab0299e896 100644
--- a/utils/bazel/llvm-project-overlay/llvm/config.bzl
+++ b/utils/bazel/llvm-project-overlay/llvm/config.bzl
@@ -64,11 +64,6 @@ emscripten_defines = [
"HAVE_UNISTD_H=1",
]
-fenv_defines = [
- "HAVE_DECL_FE_ALL_EXCEPT=1",
- "HAVE_DECL_FE_INEXACT=1",
-]
-
backtrace_defines = select({
"@platforms//os:emscripten": [],
"@platforms//os:windows": [],
@@ -84,14 +79,14 @@ mallinfo_defines = select({
"//conditions:default": [],
})
-linux_defines = posix_so_defines + fenv_defines + [
+linux_defines = posix_so_defines + [
"_GNU_SOURCE",
"HAVE_GETAUXVAL=1",
"HAVE_SBRK=1",
"HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC=1",
]
-macos_defines = posix_defines + fenv_defines + [
+macos_defines = posix_defines + [
"HAVE_CRASHREPORTER_INFO=1",
"HAVE_MACH_MACH_H=1",
"HAVE_MALLOC_MALLOC_H=1",
@@ -125,13 +120,13 @@ win32_defines = [
r'LTDL_SHLIB_EXT=\".dll\"',
r'LLVM_PLUGIN_EXT=\".dll\"',
"LLVM_ENABLE_THREADS=1",
-] + fenv_defines
+]
# TODO: We should switch to platforms-based config settings to make this easier
# to express.
os_defines = select({
"@platforms//os:emscripten": emscripten_defines,
- "@platforms//os:freebsd": posix_so_defines + fenv_defines,
+ "@platforms//os:freebsd": posix_so_defines,
"@platforms//os:macos": macos_defines,
"@platforms//os:windows": win32_defines,
"//conditions:default": linux_defines,
diff --git a/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h b/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
index d54699a1d2777..fbd442003f0be 100644
--- a/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
+++ b/utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
@@ -44,9 +44,6 @@
/* BACKTRACE_HEADER defined in Bazel */
-/* Define to 1 if you have the <CrashReporterClient.h> header file. */
-/* HAVE_CRASHREPORTERCLIENT_H defined in Bazel */
-
/* can use __crashreporter_info__ */
/* HAVE_CRASHREPORTER_INFO defined in Bazel */
@@ -54,14 +51,6 @@
don't. */
/* HAVE_DECL_ARC4RANDOM defined in Bazel */
-/* Define to 1 if you have the declaration of `FE_ALL_EXCEPT', and to 0 if you
- don't. */
-/* HAVE_DECL_FE_ALL_EXCEPT defined in Bazel */
-
-/* Define to 1 if you have the declaration of `FE_INEXACT', and to 0 if you
- don't. */
-/* HAVE_DECL_FE_INEXACT defined in Bazel */
-
/* Define to 1 if you have the declaration of `strerror_s', and to 0 if you
don't. */
#define HAVE_DECL_STRERROR_S 0
@@ -147,9 +136,6 @@
/* Define to 1 if you have the <pthread.h> header file. */
/* HAVE_PTHREAD_H defined in Bazel */
-/* Have pthread_mutex_lock */
-#define HAVE_PTHREAD_MUTEX_LOCK 1
-
/* Have pthread_rwlock_init */
#define HAVE_PTHREAD_RWLOCK_INIT 1
@@ -183,9 +169,6 @@
/* Define to 1 if you have the <unistd.h> header file. */
/* HAVE_UNISTD_H defined in Bazel */
-/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
-/* #undef HAVE_VALGRIND_VALGRIND_H */
-
/* Have host's _alloca */
/* #undef HAVE__ALLOCA */
diff --git a/utils/bazel/llvm_configs/config.h.cmake b/utils/bazel/llvm_configs/config.h.cmake
index 94fde52de11b3..34635c292e089 100644
--- a/utils/bazel/llvm_configs/config.h.cmake
+++ b/utils/bazel/llvm_configs/config.h.cmake
@@ -28,9 +28,6 @@
#define BACKTRACE_HEADER <${BACKTRACE_HEADER}>
-/* Define to 1 if you have the <CrashReporterClient.h> header file. */
-#cmakedefine HAVE_CRASHREPORTERCLIENT_H
-
/* can use __crashreporter_info__ */
#cmakedefine01 HAVE_CRASHREPORTER_INFO
@@ -38,14 +35,6 @@
don't. */
#cmakedefine01 HAVE_DECL_ARC4RANDOM
-/* Define to 1 if you have the declaration of `FE_ALL_EXCEPT', and to 0 if you
- don't. */
-#cmakedefine01 HAVE_DECL_FE_ALL_EXCEPT
-
-/* Define to 1 if you have the declaration of `FE_INEXACT', and to 0 if you
- don't. */
-#cmakedefine01 HAVE_DECL_FE_INEXACT
-
/* Define to 1 if you have the declaration of `strerror_s', and to 0 if you
don't. */
#cmakedefine01 HAVE_DECL_STRERROR_S
@@ -140,9 +129,6 @@
/* Define to 1 if you have the <pthread.h> header file. */
#cmakedefine HAVE_PTHREAD_H ${HAVE_PTHREAD_H}
-/* Have pthread_mutex_lock */
-#cmakedefine HAVE_PTHREAD_MUTEX_LOCK ${HAVE_PTHREAD_MUTEX_LOCK}
-
/* Have pthread_rwlock_init */
#cmakedefine HAVE_PTHREAD_RWLOCK_INIT ${HAVE_PTHREAD_RWLOCK_INIT}
@@ -176,9 +162,6 @@
/* Define to 1 if you have the <unistd.h> header file. */
#cmakedefine HAVE_UNISTD_H ${HAVE_UNISTD_H}
-/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
-#cmakedefine HAVE_VALGRIND_VALGRIND_H ${HAVE_VALGRIND_VALGRIND_H}
-
/* Have host's _alloca */
#cmakedefine HAVE__ALLOCA ${HAVE__ALLOCA}
``````````
</details>
https://github.com/llvm/llvm-project/pull/223592
More information about the llvm-commits
mailing list