#compiler-construction #llvm #compiler-optimization
Вопрос:
Я новичок в llvm.
Интересно, как получить пропуска на.
Я знаю, что есть флаг opt -O3 -debug-pass-manager
, чтобы получить подробную информацию, но это слишком «подробно», и я просто хочу знать порядок пропусков ПРИ использовании.
С другой стороны, как узнать о пропусках в форме, подобной mem2reg, due, always-inline...
или где находится документ, в котором об этом говорится?
Я не могу его найти. Эта проблема занимает у меня слишком много времени. Я хочу сравнить заказы между ними и моими.
Комментарии:
1. Я обнаружил это, обратившись к нескольким именам, которые я использовал. Каждый пропуск был упомянут в нескольких файлах: некоторые тестовые файлы, сам пропуск и только несколько других. Я посмотрел на этих других и довольно скоро нашел большую функцию с несколькими if (), которая добавляла проходы для O1/O2/O3. Я уверен, что он сдвинулся с тех пор, как я это сделал, но это было просто.
2.
-debug-pass=Arguments
флаг должен делать то, что вы хотите.