Локальные переменные выделяются через alloca
во время выполнения.
Для создания AllocaInst вам необходимо
llvm::BasicBlock::iterator I = ...
const llvm::Type *Ty =
auto AI = new AllocaInst(Ty, 0, Name, I);
Чтобы найти allocas в функции, вам нужно выполнить итерации по инструкциям:
for (auto I = F->begin(), E = F->end(); I != E; ++I) {
for (auto J = I->begin(), E = I->end(); J != E; ++J) {
if (auto AI = dyn_cast<AllocaInst>(*J)) {
..
}
}
}