[clang] 25e218d - [Clang] Enable lit internal shell by default

via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 19 21:48:03 PDT 2025


Author: Aiden Grossman
Date: 2025-09-19T21:47:59-07:00
New Revision: 25e218d7562f1f360a8f112de2b771585cd922c3

URL: https://github.com/llvm/llvm-project/commit/25e218d7562f1f360a8f112de2b771585cd922c3
DIFF: https://github.com/llvm/llvm-project/commit/25e218d7562f1f360a8f112de2b771585cd922c3.diff

LOG: [Clang] Enable lit internal shell by default

Now that all of the clang tests have been verified (and adjusted when
necessary) to work with lit's internal shell, we can enable it by
default, which this patch does.

This should make check-clang 10-15% faster in addition to providing
richer feedback on test failures.

Reviewers: AaronBallman, petrhosek, rnk, ilovepi, shafik, cmtice

Reviewed By: petrhosek, ilovepi, rnk, cmtice

Pull Request: https://github.com/llvm/llvm-project/pull/158465

Added: 
    

Modified: 
    clang/test/lit.cfg.py

Removed: 
    


################################################################################
diff  --git a/clang/test/lit.cfg.py b/clang/test/lit.cfg.py
index 4a5d9e582b54c..cfcbf904103d4 100644
--- a/clang/test/lit.cfg.py
+++ b/clang/test/lit.cfg.py
@@ -18,11 +18,22 @@
 # name: The name of this test suite.
 config.name = "Clang"
 
+# TODO: Consolidate the logic for turning on the internal shell by default for all LLVM test suites.
+# See https://github.com/llvm/llvm-project/issues/106636 for more details.
+#
+# We prefer the lit internal shell which provides a better user experience on failures
+# and is faster unless the user explicitly disables it with LIT_USE_INTERNAL_SHELL=0
+# env var.
+use_lit_shell = True
+lit_shell_env = os.environ.get("LIT_USE_INTERNAL_SHELL")
+if lit_shell_env:
+    use_lit_shell = lit.util.pythonize_bool(lit_shell_env)
+
 # testFormat: The test format to use to interpret tests.
 #
 # For now we require '&&' between commands, until they get globally killed and
 # the test runner updated.
-config.test_format = lit.formats.ShTest(not llvm_config.use_lit_shell)
+config.test_format = lit.formats.ShTest(execute_external=not use_lit_shell)
 
 # suffixes: A list of file extensions to treat as test files.
 config.suffixes = [


        


More information about the cfe-commits mailing list