Как извлечь место назначения экземпляра Icmp или экземпляра binaryOperator в LLVM? - PullRequest
0 голосов
/ 25 апреля 2020

Теперь я хочу получить место назначения Icmp Inst, например, если я получил Icmp Inst, например:

%cmp = icmp sgt i32 %0, 1

, как я могу получить место назначения "% cmp"? А для BinaryOperator Inst, например:

%dec = add nsw i32 %2, -1

, как я могу получить '% de c'?

Я пытался использовать Value* des = icmp->getOperand(0);, но это кажется неправильным. попробовал поискать в гугле, но не получил удовлетворительного ответа, кто-нибудь может подсказать, как решить проблему? Большое спасибо.

1 Ответ

2 голосов
/ 25 апреля 2020

Если я правильно понимаю, то icmp само по себе является целевым значением, которое вы ищете. Т.е.

Изменить

Value* des = icmp->getOperand(0);

на

Value* des = icmp;
...