LLVM LIT:是否可以将用户定义的参数传递到测试脚本中?

Pil*_*rey 4 testing parameters llvm

有人知道如何参数化 llvm-lit 脚本吗?我需要将一些环境变量值传递到脚本中,以便在某些工具的命令行中使用它。

例如,测试脚本可以包含以下行:

// RUN: some-tool $SOME_ENV_VAR 
Run Code Online (Sandbox Code Playgroud)

我需要以某种方式传递 SOME_ENV_VAR 值。

根据llvm-lit 的文档,有一个选项-D--param,但不清楚如何在脚本内访问此用户定义的参数。

先感谢您。

Eri*_*ric 5

如果您能够修改 lit.cfg 脚本(或用于生成配置的脚本),则可以在其中使用 Python 的所有灵活性。例如,您可以添加:

some_var = os.environ.get('SOME_ENV_VAR', '')

然后您可以添加查找替换元组:

config.substitutions.append(('%some_var', some_var))

现在,只要 %some_var 出现在 RUN 行中,lit 就会替换测试套件开始时的环境变量值。