[LLVMdev] use of CallInst()

Reid Spencer rspencer at reidspencer.com
Tue Mar 6 21:11:30 PST 2007


On Tue, 2007-03-06 at 22:44 -0600, Ryan M. Lefever wrote:
> To create a new CallInst I used to call the following constructor:
> 
> CallInst(Value *F, const std::vector<Value*> &Par, const std::string 
> &Name = "", Instruction *InsertBefore = 0);
> 
> However, it seems as though that constructor has been removed.  I assume 
> that I'm suppossed to use the following constructor, but I can't figure 
> out what to pass as the Args parameter (the second parameter).
> 
> CallInst (Value *F, Value *const *Args, unsigned NumArgs, const 
> std::string &Name="", Instruction *InsertBefore=0)
> 
> Can someone help?

Ryan, I suggest you familiarize yourself with
http://llvm.org/doxygen/classes.html and look there for help on the new
API. It is regenerated every night so it should be perpetually up to
date with CVS HEAD.

Args needs to be an array of the arguments and NumArgs needs to be the
size of the array. If you have a std::vector then you can just:

new CallInst(F, &ArgVec[0], ArgVec.size(), ...)

Reid.

> 
> Thanks,
> Ryan
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list