You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在LLVM单元测试中运行单个用例并进行调试

运行单个LLVM单元测试用例

方法1:使用llvm-lit直接指定测试文件

直接将单个测试文件的完整路径作为参数传给llvm-lit即可,例如:

./bin/llvm-lit -sv ./llvm/test/Unit/IR/AttributesTest.cpp

-sv参数用于输出详细的测试进度和结果信息。

方法2:使用ninja指定单个测试目标

LLVM的单元测试会被编译为独立可执行文件,每个测试对应一个ninja目标,命名格式为llvm-test-Unit-<模块名>-<测试文件名>(去掉.cpp后缀)。例如要运行AttributesTest.cpp,执行:

ninja llvm-test-Unit-IR-AttributesTest

如果不确定目标名,可通过以下命令搜索匹配的测试目标:

ninja -t targets | grep llvm-test-Unit
调试单个LLVM单元测试用例

方式1:直接调试测试可执行文件

LLVM单元测试的可执行文件默认生成在build/bin/目录下(假设你在build目录中完成构建)。找到对应测试的可执行文件后,用调试器启动:

使用GDB

gdb ./build/bin/AttributesTest

在GDB中运行特定测试函数(LLVM单元测试基于Google Test框架):

run --gtest_filter=AttributesTest.TestBasic

--gtest_filter支持通配符,比如AttributesTest.*可运行该测试类下的所有函数。

使用LLDB

lldb ./build/bin/AttributesTest

在LLDB中运行特定测试函数:

run --gtest_filter=AttributesTest.TestBasic

方式2:通过llvm-lit调用调试器

设置环境变量指定调试器,让llvm-lit自动用调试器启动目标测试:

使用LLDB

LLDB=1 ./bin/llvm-lit -sv ./llvm/test/Unit/IR/AttributesTest.cpp

使用GDB

GDB=1 ./bin/llvm-lit -sv ./llvm/test/Unit/IR/AttributesTest.cpp

内容的提问来源于stack exchange,提问作者jing z

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 17:17:09