Извлечь временный из LLVM callInst - PullRequest
0 голосов
/ 07 мая 2018

Из следующего примера вызова:

call void %4(%class.EtherAppReq* %2, i64 %5)

Я хочу извлечь временный% 4, чтобы передать его в качестве аргумента другой функции. Для этого мне нужен объект класса Value. Как я мог это сделать?

 Value *target = call->getCalledValue();
 Value *args[] = {point, target};
 Builder.CreateCall(func, args);

Это вызвало ошибку сегментации из-за цели.

Ответы [ 2 ]

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

То, что я сделал, это попытка getCalledFunction Сначала, если NULL, то getCalledValue и stripPointerCasts, если все еще не получается, выручите или пропустите это

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

CallInst::getCalledValue() чтобы получить указатель на %4.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...