[LLVMdev] how to get a void type value in llvm

Will Dietz willdtz at gmail.com
Mon Nov 22 21:49:56 PST 2010


For what it's worth, the online LLVM demo at http://llvm.org/demo/ can
be used to create code that uses the C++ API to generate the code you
give it.

Very useful for examples like this, or at least I find it useful for such :).

FYI :)

~Will

On Mon, Nov 22, 2010 at 11:36 PM, Shuying Liang <shuying.liang at gmail.com> wrote:
> 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
>
> _______________________________________________
> 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