diff --git a/llvm/utils/lit/lit/llvm/config.py b/llvm/utils/lit/lit/llvm/config.py --- a/llvm/utils/lit/lit/llvm/config.py +++ b/llvm/utils/lit/lit/llvm/config.py @@ -94,6 +94,7 @@ # part of the standard header. But currently they aren't) host_triple = getattr(config, 'host_triple', None) target_triple = getattr(config, 'target_triple', None) + features.add('target=%s' % target_triple) if host_triple and host_triple == target_triple: features.add('native') diff --git a/llvm/utils/lit/tests/Inputs/shtest-format/lit.cfg b/llvm/utils/lit/tests/Inputs/shtest-format/lit.cfg --- a/llvm/utils/lit/tests/Inputs/shtest-format/lit.cfg +++ b/llvm/utils/lit/tests/Inputs/shtest-format/lit.cfg @@ -5,5 +5,6 @@ config.test_source_root = None config.test_exec_root = None config.target_triple = 'x86_64-unknown-unknown' +config.available_features.add('target=%s' % config.target_triple) config.available_features.add('a-present-feature') config.substitutions.append(('%{python}', '"%s"' % (sys.executable))) diff --git a/llvm/utils/lit/tests/Inputs/shtest-format/requires-triple.txt b/llvm/utils/lit/tests/Inputs/shtest-format/requires-triple.txt --- a/llvm/utils/lit/tests/Inputs/shtest-format/requires-triple.txt +++ b/llvm/utils/lit/tests/Inputs/shtest-format/requires-triple.txt @@ -1,3 +1,3 @@ -# REQUIRES line that uses target triple, which doesn't work. Test should not run -REQUIRES: x86_64 -RUN: false +# REQUIRES line that uses target triple, which now works. Test should run +REQUIRES: target=x86_64{{.*}} +RUN: true diff --git a/llvm/utils/lit/tests/Inputs/shtest-format/xfail-target.txt b/llvm/utils/lit/tests/Inputs/shtest-format/xfail-target.txt --- a/llvm/utils/lit/tests/Inputs/shtest-format/xfail-target.txt +++ b/llvm/utils/lit/tests/Inputs/shtest-format/xfail-target.txt @@ -1,2 +1,2 @@ RUN: false -XFAIL: x86_64 +XFAIL: target=x86_64{{.*}} diff --git a/llvm/utils/lit/tests/shtest-format.py b/llvm/utils/lit/tests/shtest-format.py --- a/llvm/utils/lit/tests/shtest-format.py +++ b/llvm/utils/lit/tests/shtest-format.py @@ -59,7 +59,7 @@ # CHECK: UNSUPPORTED: shtest-format :: requires-missing.txt # CHECK: PASS: shtest-format :: requires-present.txt # CHECK: UNRESOLVED: shtest-format :: requires-star.txt -# CHECK: UNSUPPORTED: shtest-format :: requires-triple.txt +# CHECK: PASS: shtest-format :: requires-triple.txt # CHECK: PASS: shtest-format :: unsupported-expr-false.txt # CHECK: UNSUPPORTED: shtest-format :: unsupported-expr-true.txt # CHECK: UNRESOLVED: shtest-format :: unsupported-star.txt @@ -86,8 +86,8 @@ # CHECK: shtest-format :: xpass.txt # CHECK: Testing Time: -# CHECK: Unsupported : 4 -# CHECK: Passed : 6 +# CHECK: Unsupported : 3 +# CHECK: Passed : 7 # CHECK: Expectedly Failed : 4 # CHECK: Unresolved : 3 # CHECK: Failed : 4 @@ -96,7 +96,7 @@ # XUNIT: # XUNIT-NEXT: -# XUNIT-NEXT: +# XUNIT-NEXT: # XUNIT: # XUNIT-NEXT: @@ -141,9 +141,7 @@ # XUNIT: # XUNIT-NEXT: - -# XUNIT: -# XUNIT-NEXT: +# XUNIT: # XUNIT: