[PATCH] D101997: [lld] Add a feature for each lld variant when use_lld is called

James Henderson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 18 02:52:30 PDT 2021


This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG20e1577d13ce: [lld] Add a feature for each lld variant when use_lld is called (authored by jhenderson).

Changed prior to commit:
  https://reviews.llvm.org/D101997?vs=345804&id=346084#toc

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D101997/new/

https://reviews.llvm.org/D101997

Files:
  llvm/utils/lit/lit/llvm/config.py
  llvm/utils/lit/tests/Inputs/lld-features/ld.lld
  llvm/utils/lit/tests/Inputs/lld-features/ld.lld.exe
  llvm/utils/lit/tests/Inputs/lld-features/ld.lld.txt
  llvm/utils/lit/tests/Inputs/lld-features/ld64.lld
  llvm/utils/lit/tests/Inputs/lld-features/ld64.lld.exe
  llvm/utils/lit/tests/Inputs/lld-features/ld64.lld.txt
  llvm/utils/lit/tests/Inputs/lld-features/lit.cfg
  llvm/utils/lit/tests/Inputs/lld-features/lld-link
  llvm/utils/lit/tests/Inputs/lld-features/lld-link.exe
  llvm/utils/lit/tests/Inputs/lld-features/lld-link.txt
  llvm/utils/lit/tests/Inputs/lld-features/wasm-ld
  llvm/utils/lit/tests/Inputs/lld-features/wasm-ld.exe
  llvm/utils/lit/tests/Inputs/lld-features/wasm-ld.txt
  llvm/utils/lit/tests/lld-features.py


Index: llvm/utils/lit/tests/lld-features.py
===================================================================
--- /dev/null
+++ llvm/utils/lit/tests/lld-features.py
@@ -0,0 +1,6 @@
+## Show that each of the LLD variants detected by use_lld comes with its own
+## feature.
+
+# RUN: %{lit} %{inputs}/lld-features 2>&1 | FileCheck %s -DDIR=%p
+
+# CHECK: Passed: 4
Index: llvm/utils/lit/tests/Inputs/lld-features/wasm-ld.txt
===================================================================
--- /dev/null
+++ llvm/utils/lit/tests/Inputs/lld-features/wasm-ld.txt
@@ -0,0 +1,2 @@
+# REQUIRES: wasm-ld
+# RUN: true
Index: llvm/utils/lit/tests/Inputs/lld-features/lld-link.txt
===================================================================
--- /dev/null
+++ llvm/utils/lit/tests/Inputs/lld-features/lld-link.txt
@@ -0,0 +1,2 @@
+# REQUIRES: lld-link
+# RUN: true
Index: llvm/utils/lit/tests/Inputs/lld-features/lit.cfg
===================================================================
--- /dev/null
+++ llvm/utils/lit/tests/Inputs/lld-features/lit.cfg
@@ -0,0 +1,17 @@
+import lit.formats
+config.name = 'search-env'
+config.suffixes = ['.txt']
+config.test_format = lit.formats.ShTest()
+config.test_source_root = None
+config.test_exec_root = None
+config.llvm_tools_dir = ''
+import lit.llvm
+lit.llvm.initialize(lit_config, config)
+import os.path
+curdir = os.path.dirname(__file__)
+# The current directory contains files for each version of LLD, both with and
+# without a .exe extension. The .exe versions will be found on Windows and the
+# ones without will be found on Linux. Note that all files are just empty files,
+# since the test doesn't actually use them.
+lit.llvm.llvm_config.with_environment('PATH', curdir, append_path=True)
+lit.llvm.llvm_config.use_lld(use_installed=True)
Index: llvm/utils/lit/tests/Inputs/lld-features/ld64.lld.txt
===================================================================
--- /dev/null
+++ llvm/utils/lit/tests/Inputs/lld-features/ld64.lld.txt
@@ -0,0 +1,2 @@
+# REQUIRES: ld64.lld
+# RUN: true
Index: llvm/utils/lit/tests/Inputs/lld-features/ld.lld.txt
===================================================================
--- /dev/null
+++ llvm/utils/lit/tests/Inputs/lld-features/ld.lld.txt
@@ -0,0 +1,2 @@
+# REQUIRES: ld.lld
+# RUN: true
Index: llvm/utils/lit/lit/llvm/config.py
===================================================================
--- llvm/utils/lit/lit/llvm/config.py
+++ llvm/utils/lit/lit/llvm/config.py
@@ -615,11 +615,16 @@
         tool_substitutions = []
         if ld_lld:
             tool_substitutions.append(ToolSubst(r'ld\.lld', command=ld_lld))
+            self.config.available_features.add('ld.lld')
         if lld_link:
             tool_substitutions.append(ToolSubst('lld-link', command=lld_link))
+            self.config.available_features.add('lld-link')
         if ld64_lld:
             tool_substitutions.append(ToolSubst(r'ld64\.lld', command=ld64_lld))
+            self.config.available_features.add('ld64.lld')
         if wasm_ld:
             tool_substitutions.append(ToolSubst('wasm-ld', command=wasm_ld))
+            self.config.available_features.add('wasm-ld')
         self.add_tool_substitutions(tool_substitutions)
+
         return was_found


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101997.346084.patch
Type: text/x-patch
Size: 3265 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210518/78700b39/attachment.bin>


More information about the llvm-commits mailing list