Как выгрузить модуль llvm в файл .ll - PullRequest
0 голосов
/ 13 февраля 2020

Я вижу из этого вопроса есть способ вывести модуль в битовый код (.b c), но я хотел бы вывести IR в файл .ll, чтобы я мог просмотреть ИК.

Я знаю, llvm-dis может конвертировать .b c в .ll, но в моем случае это не работает. Я написал несколько проходов, которые преобразуют модуль таким образом, что llvm-dis не может преобразовать битовый код в IR.

Существует ли API, аналогичный LLVMWriteBitcodeToFile, который позволяет мне выгружать модуль в IR напрямую?

Ответы [ 2 ]

0 голосов
/ 07 мая 2020

Из комментария Арнта , просто используйте llvm::Module::print()

0 голосов
/ 14 февраля 2020

Вы можете использовать opt для этого. например,

opt -S test.bc -o test.ll

...