Пример для llvm:: CloneBasicBlock
Я пытаюсь найти пример кода, который использует llvm::CloneBasicBlock
, но не могу его найти. У меня возникли проблемы с узлами PHI и проблема с доминированием инструкций. Поэтому я буду признателен за любой хороший пример кода, который научит правильно использовать llvm::CloneBasicBlock
.
1 ответ:
Что плохого в том, чтобы посмотреть в самом источнике LLVM?
CloneBasicBlock
используется в ряде мест. Простейшим, вероятно, являетсяllvm::CloneFunctionInto
; вероятно, этого должно быть достаточно, чтобы продемонстрировать, как правильно использовать функцию (в терминах того, какие аргументы передавать и т. д.)Более интересный пример находится в
llvm::LoopUnroll
, который также имеет дело со ссылками из узлов PHI.