我的 LLVM 代码中有一个整数值向量vector<Value*> myIntegers
(不一定是常量)。我想创建一个 Store 指令来存储这些整数。要使用以下格式创建存储指令,对于第一个参数,我需要创建一个指向这些整数的 Value*(从中创建一个数组)。
new StoreInst(Value *Val, Value *Ptr, ...);
如果我的整数是常量,我会使用:
Constant *IntArrayConstant = ConstantDataArray::get(getGlobalContext(), ArrayRef<Value*> myIntegers);
如何创建一个通用i32
类型数组,并Value*
指向它?文档说存储 ArrayRef 也不安全。