[llvm] [LLVM] Specialize test suites for `TableGen` and `FileCheck` to use smaller set of dependencies (PR #155929)
Rahul Joshi via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 11 11:50:15 PDT 2025
https://github.com/jurahul updated https://github.com/llvm/llvm-project/pull/155929
>From b0664e809c4c406fdc7b832e7c4c1babc76ce8be Mon Sep 17 00:00:00 2001
From: Rahul Joshi <rjoshi at nvidia.com>
Date: Mon, 25 Aug 2025 19:16:35 -0700
Subject: [PATCH 1/2] Trim test deps
---
llvm/test/CMakeLists.txt | 197 +++++++++++++++--------------
llvm/test/FileCheck/CMakeLists.txt | 4 +
llvm/test/TableGen/CMakeLists.txt | 10 ++
3 files changed, 118 insertions(+), 93 deletions(-)
create mode 100644 llvm/test/FileCheck/CMakeLists.txt
create mode 100644 llvm/test/TableGen/CMakeLists.txt
diff --git a/llvm/test/CMakeLists.txt b/llvm/test/CMakeLists.txt
index f6333d68a8ea5..82570c4e3f4ea 100644
--- a/llvm/test/CMakeLists.txt
+++ b/llvm/test/CMakeLists.txt
@@ -59,100 +59,104 @@ configure_lit_site_cfg(
# Set the depends list as a variable so that it can grow conditionally.
# NOTE: Sync the substitutions in test/lit.cfg when adding to this list.
+
+set(LLVM_TEST_DEPENDS_COMMON
+ FileCheck
+ count
+ llvm-config
+ not
+ )
+
set(LLVM_TEST_DEPENDS
- BugpointPasses
- FileCheck
- LLVMWindowsDriver
- UnitTests
- bugpoint
- count
- llc
- lli
- lli-child-target
- llvm-addr2line
- llvm-ar
- llvm-as
- llvm-bcanalyzer
- llvm-bitcode-strip
- llvm-c-test
- llvm-cat
- llvm-cfi-verify
- llvm-cgdata
- llvm-config
- llvm-cov
- llvm-ctxprof-util
- llvm-cvtres
- llvm-cxxdump
- llvm-cxxfilt
- llvm-cxxmap
- llvm-debuginfo-analyzer
- llvm-debuginfod-find
- llvm-diff
- llvm-dis
- llvm-dlltool
- dsymutil
- llvm-dwarfdump
- llvm-dwarfutil
- llvm-dwp
- llvm-exegesis
- llvm-extract
- llvm-gsymutil
- llvm-ir2vec
- llvm-isel-fuzzer
- llvm-ifs
- llvm-install-name-tool
- llvm-jitlink
- llvm-lib
- llvm-libtool-darwin
- llvm-link
- llvm-lipo
- llvm-locstats
- llvm-lto2
- llvm-mc
- llvm-mca
- llvm-ml
- llvm-ml64
- llvm-modextract
- llvm-nm
- llvm-objcopy
- llvm-objdump
- llvm-opt-fuzzer
- llvm-opt-report
- llvm-offload-wrapper
- llvm-otool
- llvm-pdbutil
- llvm-profdata
- llvm-profgen
- llvm-ranlib
- llvm-rc
- llvm-readobj
- llvm-readelf
- llvm-reduce
- llvm-remarkutil
- llvm-rtdyld
- llvm-sim
- llvm-size
- llvm-split
- llvm-stress
- llvm-strings
- llvm-strip
- llvm-symbolizer
- llvm-tblgen
- llvm-readtapi
- llvm-tli-checker
- llvm-undname
- llvm-windres
- llvm-xray
- not
- obj2yaml
- opt
- sancov
- sanstats
- split-file
- verify-uselistorder
- yaml-bench
- yaml2obj
- )
+ BugpointPasses
+ LLVMWindowsDriver
+ UnitTests
+ bugpoint
+ llc
+ lli
+ lli-child-target
+ llvm-addr2line
+ llvm-ar
+ llvm-as
+ llvm-bcanalyzer
+ llvm-bitcode-strip
+ llvm-c-test
+ llvm-cat
+ llvm-cfi-verify
+ llvm-cgdata
+ llvm-cov
+ llvm-ctxprof-util
+ llvm-cvtres
+ llvm-cxxdump
+ llvm-cxxfilt
+ llvm-cxxmap
+ llvm-debuginfo-analyzer
+ llvm-debuginfod-find
+ llvm-diff
+ llvm-dis
+ llvm-dlltool
+ dsymutil
+ llvm-dwarfdump
+ llvm-dwarfutil
+ llvm-dwp
+ llvm-exegesis
+ llvm-extract
+ llvm-gsymutil
+ llvm-ir2vec
+ llvm-isel-fuzzer
+ llvm-ifs
+ llvm-install-name-tool
+ llvm-jitlink
+ llvm-lib
+ llvm-libtool-darwin
+ llvm-link
+ llvm-lipo
+ llvm-locstats
+ llvm-lto2
+ llvm-mc
+ llvm-mca
+ llvm-ml
+ llvm-ml64
+ llvm-modextract
+ llvm-nm
+ llvm-objcopy
+ llvm-objdump
+ llvm-opt-fuzzer
+ llvm-opt-report
+ llvm-offload-wrapper
+ llvm-otool
+ llvm-pdbutil
+ llvm-profdata
+ llvm-profgen
+ llvm-ranlib
+ llvm-rc
+ llvm-readobj
+ llvm-readelf
+ llvm-reduce
+ llvm-remarkutil
+ llvm-rtdyld
+ llvm-sim
+ llvm-size
+ llvm-split
+ llvm-stress
+ llvm-strings
+ llvm-strip
+ llvm-symbolizer
+ llvm-tblgen
+ llvm-readtapi
+ llvm-tli-checker
+ llvm-undname
+ llvm-windres
+ llvm-xray
+ obj2yaml
+ opt
+ sancov
+ sanstats
+ split-file
+ verify-uselistorder
+ yaml-bench
+ yaml2obj
+ )
if(TARGET llvm-lto)
set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-lto)
@@ -259,11 +263,18 @@ add_lit_testsuite(check-llvm "Running the LLVM regression tests"
)
set_target_properties(check-llvm PROPERTIES FOLDER "LLVM/Tests")
+# Note, exclude TableGen and FileCheck directories as we define them with a
+# reduced set of dependencies in their individual CMakeLists.txt
add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR}
${exclude_from_check_all}
+ DEPENDS ${LLVM_TEST_DEPENDS_COMMON}
DEPENDS ${LLVM_TEST_DEPENDS}
FOLDER "Tests/Subdirectories"
+ SKIP "^FileCheck"
+ SKIP "^TableGen"
)
+add_subdirectory(FileCheck)
+add_subdirectory(TableGen)
# Setup an alias for 'check-all'.
add_custom_target(check)
diff --git a/llvm/test/FileCheck/CMakeLists.txt b/llvm/test/FileCheck/CMakeLists.txt
new file mode 100644
index 0000000000000..a5bd0daac9b7a
--- /dev/null
+++ b/llvm/test/FileCheck/CMakeLists.txt
@@ -0,0 +1,4 @@
+add_lit_testsuite(check-llvm-filecheck "Running lit suite for FileCheck"
+ ${CMAKE_CURRENT_BINARY_DIR}
+ DEPENDS ${LLVM_TEST_DEPENDS_COMMON}
+ )
diff --git a/llvm/test/TableGen/CMakeLists.txt b/llvm/test/TableGen/CMakeLists.txt
new file mode 100644
index 0000000000000..cc514402b1801
--- /dev/null
+++ b/llvm/test/TableGen/CMakeLists.txt
@@ -0,0 +1,10 @@
+# Subset of dependencies for TableGen lit test.
+set(LLVM_TEST_TABLEGEN_DEPENDS
+ llvm-tblgen
+ )
+
+add_lit_testsuite(check-llvm-tablegen "Running lit suite for TableGen"
+ ${CMAKE_CURRENT_BINARY_DIR}
+ DEPENDS ${LLVM_TEST_DEPENDS_COMMON}
+ DEPENDS ${LLVM_TEST_TABLEGEN_DEPENDS}
+ )
>From 1a382a40e4018486a9acf5ca7fe84478a2b3a604 Mon Sep 17 00:00:00 2001
From: Rahul Joshi <rjoshi at nvidia.com>
Date: Thu, 11 Sep 2025 11:49:51 -0700
Subject: [PATCH 2/2] Review feedback
---
llvm/test/CMakeLists.txt | 3 +--
llvm/test/TableGen/CMakeLists.txt | 7 +------
2 files changed, 2 insertions(+), 8 deletions(-)
diff --git a/llvm/test/CMakeLists.txt b/llvm/test/CMakeLists.txt
index 82570c4e3f4ea..b27f716a99a1d 100644
--- a/llvm/test/CMakeLists.txt
+++ b/llvm/test/CMakeLists.txt
@@ -270,8 +270,7 @@ add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR}
DEPENDS ${LLVM_TEST_DEPENDS_COMMON}
DEPENDS ${LLVM_TEST_DEPENDS}
FOLDER "Tests/Subdirectories"
- SKIP "^FileCheck"
- SKIP "^TableGen"
+ SKIP "^FileCheck" "^TableGen"
)
add_subdirectory(FileCheck)
add_subdirectory(TableGen)
diff --git a/llvm/test/TableGen/CMakeLists.txt b/llvm/test/TableGen/CMakeLists.txt
index cc514402b1801..65774bb4b45b5 100644
--- a/llvm/test/TableGen/CMakeLists.txt
+++ b/llvm/test/TableGen/CMakeLists.txt
@@ -1,10 +1,5 @@
-# Subset of dependencies for TableGen lit test.
-set(LLVM_TEST_TABLEGEN_DEPENDS
- llvm-tblgen
- )
-
add_lit_testsuite(check-llvm-tablegen "Running lit suite for TableGen"
${CMAKE_CURRENT_BINARY_DIR}
DEPENDS ${LLVM_TEST_DEPENDS_COMMON}
- DEPENDS ${LLVM_TEST_TABLEGEN_DEPENDS}
+ DEPENDS llvm-tblgen
)
More information about the llvm-commits
mailing list