在LLVM中将ConstantDataArray转换为i8 *

时间:2017-04-21 18:30:52

标签: c++ llvm

简单问题:“我有一个[7 x i8]类型的ConstantDataArray,如何将其转换为i8*类型?”

修改 更多背景:

ConstantDataArray创建如下:

ConstantDataArray::getString(Fn->getContext(), "Hello", true);

我创建了一个LLVM:函数,其类型的参数来自Type::getInt8PtrTy(getGlobalContext()),我想将数组转换为此类型,因此我可以将其作为参数传递。

我正在开发一个传递

1 个答案:

答案 0 :(得分:2)

您可以使用IRBuilder的{​​{3}}这是一个方便的包装器,用于创建全局字符串常量并返回指向其第一个字符的i8*