#llvm
Вопрос:
Я хотел бы иметь возможность определить, какая часть программы была изменена предыдущим проходом LLVM.
Как я могу пометить инструкции / базовые блоки и функции, такие как я могу получить, что проход P1 ранее изменил эту часть кода ?
Я хотел бы достичь чего — то вроде:
// First pass
...
tag<bool>(instruction, "modified");
// Second pass
if(has_tag<bool>(instruction, "modified"))
do_something...
Есть ли в LLVM функция, позволяющая создать такую систему тегов ?
Комментарии:
1. Это звучит так, как будто вы хотите реализовать разницу. LLVM не содержит ничего подобного.
Ответ №1:
Вы можете посмотреть на движок LLVM diff в его наборе инструментов: https://github.com/llvm/llvm-project/blob/main/llvm/tools/llvm-diff/llvm-diff.cpp