Skip to content

Commit

Permalink
Lit: Allow overriding llvm tool paths+arguments, make -D an alias for…
Browse files Browse the repository at this point in the history
… --param

These changes allow usages where you want to pass an additional
commandline option to all invocations of a specific llvm tool. Example:

> llvm-lit -Dllc=llc -enable-misched -verify-machineinstrs

Differential Revision: http://reviews.llvm.org/D9487

llvm-svn: 236461
  • Loading branch information
MatzeB committed May 4, 2015
1 parent ec2d735 commit 219144e
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 4 deletions.
2 changes: 1 addition & 1 deletion llvm/docs/CommandGuide/lit.rst
Expand Up @@ -56,7 +56,7 @@ GENERAL OPTIONS
Search for :file:`{NAME}.cfg` and :file:`{NAME}.site.cfg` when searching for
test suites, instead of :file:`lit.cfg` and :file:`lit.site.cfg`.

.. option:: --param NAME, --param NAME=VALUE
.. option:: -D NAME, -D NAME=VALUE, --param NAME, --param NAME=VALUE

Add a user defined parameter ``NAME`` with the given ``VALUE`` (or the empty
string if not given). The meaning and use of these parameters is test suite
Expand Down
8 changes: 6 additions & 2 deletions llvm/test/lit.cfg
Expand Up @@ -267,8 +267,12 @@ for pattern in [r"\bbugpoint\b(?!-)",
pattern)
tool_pipe = tool_match.group(2)
tool_name = tool_match.group(4)
tool_path = lit.util.which(tool_name, llvm_tools_dir)
if not tool_path:
# Did the user specify the tool path + arguments? This allows things like
# llvm-lit "-Dllc=llc -enable-misched -verify-machineinstrs"
tool_path = lit_config.params.get(tool_name)
if tool_path is None:
tool_path = lit.util.which(tool_name, llvm_tools_dir)
if tool_path is None:
# Warn, but still provide a substitution.
lit_config.note('Did not find ' + tool_name + ' in ' + llvm_tools_dir)
tool_path = llvm_tools_dir + '/' + tool_name
Expand Down
2 changes: 1 addition & 1 deletion llvm/utils/lit/lit/main.py
Expand Up @@ -146,7 +146,7 @@ def main(builtinParameters = {}):
parser.add_option("", "--config-prefix", dest="configPrefix",
metavar="NAME", help="Prefix for 'lit' config files",
action="store", default=None)
parser.add_option("", "--param", dest="userParameters",
parser.add_option("-D", "--param", dest="userParameters",
metavar="NAME=VAL",
help="Add 'NAME' = 'VAL' to the user defined parameters",
type=str, action="append", default=[])
Expand Down

0 comments on commit 219144e

Please sign in to comment.