[LLVMdev] how to get a void type value in llvm
Shuying Liang
shuying.liang at gmail.com
Mon Nov 22 21:36:07 PST 2010
Hi, sivart
Thanks for pointing it out. I used it, and it works. Thank you again.
BTW, for any later reference, the function prototype declaration with
no arguments is not what I wrote:
fcall2 = M.getOrInsertFunction("foo",
IntegerType::get(M.getContext(), 32),
Type::getVoidTy(M.getContext()));
INSTEAD, I changed to :
fcall2 = M.getOrInsertFunction("foo", FunctionType::get(
IntegerType::get(M.getContext(), 32), false));
combining with this, the insertion works finally.
Thanks,
--Shuying
On Mon, Nov 22, 2010 at 6:07 PM, <o.j.sivart at gmail.com> wrote:
> Hi Shuying,
> You will find in the documentation that amongst the
> overloaded CallInst::Create()'s there is one that takes no function
> arguments:
> static CallInst*
> llvm::CallInst::Create ( Value * F, const Twine & NameStr, BasicBlock * InsertAtEnd);
>
> Regards
> On 23/11/2010, at 11:20 AM, Shuying Liang wrote:
>
> Hi, I want to insert a function with a void type parameter,
> for example: int foo(void);
> OI declared
> fcall2 = M.getOrInsertFunction("foo",
> IntegerType::get(M.getContext(), 32),
> Type::getVoidTy(M.getContext()));
>
> then the question is how to get the void type value to make the
> CallInst inserted sucessfully? (what should be ********)
> CallInst::Create(fcall2, ******, "", insertPos);
>
>
> --
>
> --Shuying
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
--
--Shuying
More information about the llvm-dev
mailing list