我想插入LLVM IR格式的添加指令,如x = x + 1
,其中x是全局變量。我曾經嘗試這樣做:如何在紅外文件llvm中插入添加指令?
GlobalVariable* x = new GlobalVariable(mod,Type::getInt32Ty(Context),false,GlobalValue::CommonLinkage,0,"xCounter");
Value one = ConstantInt::get(Type::getInt32Ty(Context),1);
newInst = BinaryOperator::Create(Instruction::Add, , one ,"counter", insertPos);
但發生錯誤,它不接受類型GlobalVariable
。
如何定義全局變量並設置其值?
你的最後一行 - 如何打印 - 真的是它自己的問題。我從這個問題中刪除了它,你應該單獨提出。 – Oak