Включить вывод отладки для оптимизации переходит от clang
Я пытаюсь понять существующий проход в LLVM и, таким образом, пытаясь распечатать хорошо написанные отладочные сообщения в проходе. Я делаю это, используя clang -debug -some-other-flags
. Однако при компиляции он говорит:
clang: warning: argument unused during compilation: '-debug'
Как включить вывод отладки?
Ответы
Ответ 1
Clang не имеет опции командной строки "debug"; вам нужно либо построить IR из clang, а затем запустить opt -debug
отдельно или запустить clang -mllvm -debug
.
В общем случае флаг -mllvm
передает все, что появляется после этого, на LLVM. Используйте несколько флагов -mllvm
, если вы хотите передать несколько параметров вперед.
Ответ 2
В случае, если принятый ответ не сработает для вас: помимо добавления -mllvm -debug
, вы нуждаетесь в clang, который построен с поддержкой утверждений отладки, что делается путем добавления параметров -DLLVM_ENABLE_ASSERTIONS=On
to cmake при компиляции clang (ref).