我试图了解LLVM中的现有传递,从而尝试在传递中打印编写良好的调试消息。我是通过使用clang -debug -some-other-flags
这样做的。然而,在编译它时说:
clang: warning: argument unused during compilation: '-debug'
如何启用调试输出?
答案 0 :(得分:16)
Clang没有“debug”命令行选项;您需要从clang构建IR,然后单独运行opt -debug
,或运行clang -mllvm -debug
。
通常,-mllvm
标志会将之后出现的内容传递给LLVM本身。如果您想要向前传递多个选项,请使用多个-mllvm
标记。
答案 1 :(得分:5)
如果接受的答案不适合您:除了添加-mllvm -debug
之外,您need clang which is built with debug assertions enabled,这是通过在编译clang时将-DLLVM_ENABLE_ASSERTIONS=On
添加到cmake选项来完成的({{3 }})。