我正在使用CMake和Ninja构建LLVM,具体步骤如下:
以下方式运行 opt 没有产生任何输出信息:
根据LLVM文档所述:
cmake path/to/llvm/ -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=1 -DLLVM_ENABLE_CXX1Y=1 -DLLVM_ENABLE_RTTI=1 -DLLVM_TARGETS_TO_BUILD="X86" -G Ninja
现在我正在尝试使用opt的-debug-only=mytype
选项来打印有关我的自定义Pass的一些调试信息:在我的Pass代码中使用以下内容:
define DEBUG_TYPE "mytype"
DEBUG(errs() << "My debug message\n");
以下方式运行 opt 没有产生任何输出信息:
opt < a.bc > /dev/null -mypass -debug-only=mytype
根据LLVM文档所述:
我怀疑这是我的问题根源,但我找不到在使用cmake构建llvm时如何打开/关闭此选项。出于性能考虑,在优化构建(--enable-optimized)的LLVM中不可用-debug-only选项。