LLVM分配的可用内存

时间:2012-05-03 19:25:14

标签: memory-management llvm

我正在努力寻找如何释放LLVM函数分配的内存。例如,当我调用函数Function::Create()来创建LLVM函数时,如何释放分配给它的内存?同样实际上适用于许多LLVM函数,如IRBuilder::CreateAlloca()IRBuilder::CreateStore()等。任何想法?

1 个答案:

答案 0 :(得分:3)

首先,在删除任何Value时,请确保它不再有User个。显然,删除使用的值会导致错误(以断言的形式)。这可以通过调用getNumUses()或更好(阅读:更快)hasNUses(0)轻松测试。

当您确定不再使用您的值时,不同类型的值有时需要不同的方法来删除它们。对于你的两个案例: