我正在尝试创建IR指令
store i32 0, i32* %3, align 4
我正在使用方法
StoreInst *CreateAlignedStore(Value *Val, Value *Ptr, unsigned Align, bool isVolatile = false)
创建指令。由于第一个参数采用Value*
,因此我需要以某种方式将0
转换为Value*
。
你能帮我吗?
答案 0 :(得分:3)
您可以将llvm :: Constant用作* val,llvm常量从Value继承。为0创建常量的一种方法是
llvm::ConstantInt::get(llvm::Type::getInt64Ty(Ctx), 0)
在Ctx是要插入StoreInst的函数的上下文中