[LLVMdev] Help with code
Misha Brukman
brukman at uiuc.edu
Tue Dec 21 14:48:55 PST 2004
On Tue, Dec 21, 2004 at 03:45:33PM -0700, Sriraman Tallam wrote:
> I have this call instruction to printf inserted which is causing
> an assertion failure. Any pointers to where I am wrong :
>
> Function *printFn=M.getNamedFunction(std::string("printf"));
std::string() is unnecessary here as it's implicit.
> Constant *str=ConstantArray::get("Value : %d\n");
> std::vector<Value *> Args(2);
> std::vector<Constant *> GEPIndices(2);
> GEPIndices[0]=Constant::getNullValue(Type::LongTy);
> GEPIndices[1]=Constant::getNullValue(Type::LongTy);
> Args[0]=ConstantExpr::getGetElementPtr(strcon,GEPIndices);
You are using 'strcon', but you defined 'str' above. Where is 'strcon'
coming from?
> Args[1]=ConstantInt::get(Type::IntTy, id);
> Instruction * cI= new CallInst(printFn, Args, "retprintf",instr);
--
Misha Brukman :: http://misha.brukman.net :: http://llvm.cs.uiuc.edu
More information about the llvm-dev
mailing list