【发布时间】:2013-05-22 13:47:22
【问题描述】:
我正在尝试编写 LLVM C API 代码来生成 LLVM 汇编代码来计算字符串中的字符数。我需要知道如何在 LLVM C API 中的 LLVM IR 等效项中编写 getelementptr。我已经查看了整个谷歌,似乎无法找到答案。任何帮助或提示将不胜感激。先感谢您。
【问题讨论】:
标签: llvm llvm-ir llvm-c++-api
我正在尝试编写 LLVM C API 代码来生成 LLVM 汇编代码来计算字符串中的字符数。我需要知道如何在 LLVM C API 中的 LLVM IR 等效项中编写 getelementptr。我已经查看了整个谷歌,似乎无法找到答案。任何帮助或提示将不胜感激。先感谢您。
【问题讨论】:
标签: llvm llvm-ir llvm-c++-api
我认为您正在寻找来自 C API 的 LLVMBuildGEP 函数。你可以在include/llvm-c/Core.h看到它的原型。
【讨论】:
wrap(unwrap(B)->CreateGEP(nullptr, unwrap(Pointer), IdxList, Name));。是不是意味着如果使用LLVM C API,我们只能将nullptr传递给CreateGEP的第一个参数?
<2 x i32>* 的指针,它返回向量中的第二个元素。 LLVM IR 应该是getelementptr i32, <2 x i32>* %0, i32 1。我无法使用LLVMBuildGEP 生成代码。你能给点建议吗?非常感谢。