[libcxx-commits] [PATCH] D116010: [libcxx] [test] Don't rerun supportsVerify for each individual test
Martin Storsjö via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Dec 21 09:41:27 PST 2021
This revision was automatically updated to reflect the committed changes.
Closed by commit rG008849d7a51e: [libcxx] [test] Don't rerun supportsVerify for each individual test (authored by mstorsjo).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D116010/new/
https://reviews.llvm.org/D116010
Files:
libcxx/test/libcxx/selftest/fail.cpp/lit.local.cfg
libcxx/utils/libcxx/test/features.py
libcxx/utils/libcxx/test/format.py
Index: libcxx/utils/libcxx/test/format.py
===================================================================
--- libcxx/utils/libcxx/test/format.py
+++ libcxx/utils/libcxx/test/format.py
@@ -12,21 +12,6 @@
import pipes
import re
import shutil
-import subprocess
-
-def _supportsVerify(config):
- """
- Determine whether clang-verify is supported by the given configuration.
-
- This is done by checking whether the %{cxx} substitution in that
- configuration supports certain compiler flags.
- """
- command = "%{{cxx}} -xc++ {} -Werror -fsyntax-only -Xclang -verify-ignore-unexpected".format(os.devnull)
- command = lit.TestRunner.applySubstitutions([command], config.substitutions,
- recursion_limit=config.recursiveExpansionLimit)[0]
- devNull = open(os.devnull, 'w')
- result = subprocess.call(command, shell=True, stdout=devNull, stderr=devNull)
- return result == 0
def _getTempPaths(test):
"""
@@ -216,7 +201,7 @@
def execute(self, test, litConfig):
VERIFY_FLAGS = '-Xclang -verify -Xclang -verify-ignore-unexpected=note -ferror-limit=0'
- supportsVerify = _supportsVerify(test.config)
+ supportsVerify = 'verify-support' in test.config.available_features
filename = test.path_in_suite[-1]
# TODO(ldionne): We currently disable tests that re-define _LIBCPP_ASSERT
Index: libcxx/utils/libcxx/test/features.py
===================================================================
--- libcxx/utils/libcxx/test/features.py
+++ libcxx/utils/libcxx/test/features.py
@@ -41,6 +41,7 @@
Feature(name='has-fobjc-arc', when=lambda cfg: hasCompileFlag(cfg, '-xobjective-c++ -fobjc-arc') and
sys.platform.lower().strip() == 'darwin'), # TODO: this doesn't handle cross-compiling to Apple platforms.
Feature(name='objective-c++', when=lambda cfg: hasCompileFlag(cfg, '-xobjective-c++ -fobjc-arc')),
+ Feature(name='verify-support', when=lambda cfg: hasCompileFlag(cfg, '-Xclang -verify-ignore-unexpected')),
Feature(name='non-lockfree-atomics',
when=lambda cfg: sourceBuilds(cfg, """
Index: libcxx/test/libcxx/selftest/fail.cpp/lit.local.cfg
===================================================================
--- libcxx/test/libcxx/selftest/fail.cpp/lit.local.cfg
+++ /dev/null
@@ -1,6 +0,0 @@
-import libcxx.test.format
-
-# The tests in this directory need to know whether Clang-verify is supported
-# to work properly.
-if libcxx.test.format._supportsVerify(config):
- config.available_features.add('verify-support')
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D116010.395710.patch
Type: text/x-patch
Size: 2690 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20211221/e1dacd7b/attachment.bin>
More information about the libcxx-commits
mailing list