diff options
author | Daniel Dunbar <daniel@zuster.org> | 2012-10-19 20:29:27 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2012-10-19 20:29:27 +0000 |
commit | f793fbc5698263e045661cab3fb06144c66cc1db (patch) | |
tree | cb70ff0e9a8864468b8e0835c90d49bf108a7ac5 /utils/lit | |
parent | f854597fc1a183a9d13827a6eeb9f53a69819497 (diff) | |
download | external_llvm-f793fbc5698263e045661cab3fb06144c66cc1db.zip external_llvm-f793fbc5698263e045661cab3fb06144c66cc1db.tar.gz external_llvm-f793fbc5698263e045661cab3fb06144c66cc1db.tar.bz2 |
lit: Remove support for XTARGET.
- The XTARGET feature (inherited from old DG tests) was just confusing (and
barely ever used). The same effect can now be achieved with a combination of
the more useful REQUIRES and XFAIL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166305 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/lit')
4 files changed, 15 insertions, 27 deletions
diff --git a/utils/lit/lit/ExampleTests/LLVM.InTree/test/Bar/bar-test.ll b/utils/lit/lit/ExampleTests/LLVM.InTree/test/Bar/bar-test.ll deleted file mode 100644 index 3017b13..0000000 --- a/utils/lit/lit/ExampleTests/LLVM.InTree/test/Bar/bar-test.ll +++ /dev/null @@ -1,3 +0,0 @@ -; RUN: true -; XFAIL: * -; XTARGET: darwin diff --git a/utils/lit/lit/ExampleTests/LLVM.InTree/test/lit.cfg b/utils/lit/lit/ExampleTests/LLVM.InTree/test/lit.cfg index e9df1e5..3fdd63c 100644 --- a/utils/lit/lit/ExampleTests/LLVM.InTree/test/lit.cfg +++ b/utils/lit/lit/ExampleTests/LLVM.InTree/test/lit.cfg @@ -77,7 +77,7 @@ for line in open(os.path.join(config.llvm_obj_root, 'test', 'site.exp')): excludes = [] -# Provide target_triple for use in XFAIL and XTARGET. +# Provide target_triple for use in XFAIL. config.target_triple = site_exp['target_triplet'] # Provide llvm_supports_target for use in local configs. diff --git a/utils/lit/lit/ExampleTests/LLVM.OutOfTree/src/test/lit.cfg b/utils/lit/lit/ExampleTests/LLVM.OutOfTree/src/test/lit.cfg index e9df1e5..3fdd63c 100644 --- a/utils/lit/lit/ExampleTests/LLVM.OutOfTree/src/test/lit.cfg +++ b/utils/lit/lit/ExampleTests/LLVM.OutOfTree/src/test/lit.cfg @@ -77,7 +77,7 @@ for line in open(os.path.join(config.llvm_obj_root, 'test', 'site.exp')): excludes = [] -# Provide target_triple for use in XFAIL and XTARGET. +# Provide target_triple for use in XFAIL. config.target_triple = site_exp['target_triplet'] # Provide llvm_supports_target for use in local configs. diff --git a/utils/lit/lit/TestRunner.py b/utils/lit/lit/TestRunner.py index 62a7956..0c1911e 100644 --- a/utils/lit/lit/TestRunner.py +++ b/utils/lit/lit/TestRunner.py @@ -370,32 +370,27 @@ def executeScript(test, litConfig, tmpBase, commands, cwd): return executeCommand(command, cwd=cwd, env=test.config.environment) -def isExpectedFail(test, xfails, xtargets): - # If the xfail matches an available feature, it always fails. +def isExpectedFail(test, xfails): + # Check if any of the xfails match an available feature or the target. for item in xfails: - if item in test.config.available_features: + # If this is the wildcard, it always fails. + if item == '*': return True - # Otherwise, check if any xfail matches this target. - for item in xfails: - if item == '*' or item in test.suite.config.target_triple: - break - else: - return False + # If this is an exact match for one of the features, it fails. + if item in test.config.available_features: + return True - # If so, see if it is expected to pass on this target. - # - # FIXME: Rename XTARGET to something that makes sense, like XPASS. - for item in xtargets: - if item == '*' or item in test.suite.config.target_triple: - return False + # If this is a part of the target triple, it fails. + if item in test.suite.config.target_triple: + return True - return True + return False def parseIntegratedTestScript(test, normalize_slashes=False, extra_substitutions=[]): """parseIntegratedTestScript - Scan an LLVM/Clang style integrated test - script and extract the lines to 'RUN' as well as 'XFAIL' and 'XTARGET' + script and extract the lines to 'RUN' as well as 'XFAIL' and 'REQUIRES' information. The RUN lines also will have variable substitution performed. """ @@ -436,7 +431,6 @@ def parseIntegratedTestScript(test, normalize_slashes=False, # Collect the test lines from the script. script = [] xfails = [] - xtargets = [] requires = [] for ln in open(sourcepath): if 'RUN:' in ln: @@ -455,9 +449,6 @@ def parseIntegratedTestScript(test, normalize_slashes=False, elif 'XFAIL:' in ln: items = ln[ln.index('XFAIL:') + 6:].split(',') xfails.extend([s.strip() for s in items]) - elif 'XTARGET:' in ln: - items = ln[ln.index('XTARGET:') + 8:].split(',') - xtargets.extend([s.strip() for s in items]) elif 'REQUIRES:' in ln: items = ln[ln.index('REQUIRES:') + 9:].split(',') requires.extend([s.strip() for s in items]) @@ -496,7 +487,7 @@ def parseIntegratedTestScript(test, normalize_slashes=False, return (Test.UNSUPPORTED, "Test requires the following features: %s" % msg) - isXFail = isExpectedFail(test, xfails, xtargets) + isXFail = isExpectedFail(test, xfails) return script,isXFail,tmpBase,execdir def formatTestOutput(status, out, err, exitCode, failDueToStderr, script): |