c - 插入 getelementptr 指令

标签 c llvm intermediate-code

我想在我的代码中插入 getelementpr 指令,如下所示。

%i1 = getelementptr inbounds [16 x i64]* @Counters, i64 0, i64 %8

如何插入?我可以使用 LoadInstStoreInst 类的构造函数插入加载和存储指令,但是 GetElementPtrInst 的构造函数被声明为私有(private),所以不能不要使用它。所以,我的问题是如何从我的代码中为 LLVM pass 添加这条指令。

最佳答案

根据 http://llvm.org/doxygen/classllvm_1_1GetElementPtrInst.html您可以通过类似工厂的 GetElementPtrInst::Create() 方法创建指令。或者,您可以使用 IRBuilder 为您完成所有低级别的工作。

关于c - 插入 getelementptr 指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9414850/

相关文章:

c++ - 如何从 LLVM 中的 CallInst 获取函数名称?

llvm - llc 没有调试或 -view-dag-combine1-dags 选项

c++ - 静态函数调用错误 "C++ requires a type specifier for all declarations"

llvm - 如何从 LLVM 的 MemoryDe​​pendenceAnalysis 传递中获得更好的结果?

c++ - 编译器如何识别其主机的硬件?哪个组件?

c++ - 如何检查迭代器的相等性?

c - calloc 和 malloc 可以分配多少内存?

c++ - 如何从 C++ 调用 VB.NET DLL(也调用函数 - 不仅是 DLL 文件)

c - 写入.txt 文件?

java - 如何使十进制输入有效?