[LLVMdev] Tablegen question

Bob Wilson bob.wilson at apple.com
Wed Apr 15 10:31:28 PDT 2009


That's a bug.  I'm working on a fix....

On Apr 15, 2009, at 10:16 AM, Villmow, Micah wrote:

> In IntrinsicEmitter::EmitTypeGenerate, called from
> IntrinsicEmitter::EmitGenerator, here
> for (unsigned j = 0; j != N; ++j) {
>      OS << "    ArgTys.push_back(";
>      EmitTypeGenerate(OS, ParamTys[j], ArgNo);
>      OS << ");\n";
>    }
> I'm hitting this assertion:
> if (ArgType->isSubClassOf("LLVMMatchType")) {
>    unsigned Number = ArgType->getValueAsInt("Number");
>    assert(Number < ArgNo && "Invalid matching number!");
>
> Where both Number and ArgNo are 1.
>
> -----Original Message-----
> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu]
> On Behalf Of Bob Wilson
> Sent: Wednesday, April 15, 2009 9:53 AM
> To: LLVM Developers Mailing List
> Subject: Re: [LLVMdev] Tablegen question
>
>
> On Apr 15, 2009, at 9:29 AM, Villmow, Micah wrote:
>
>> I have this intrinsic definition for llvm.
>> def int_opencl_math_fdistance_fast   : Intrinsic<[llvm_float_ty],
>>                           [llvm_anyfloat_ty, LLVMMatchType<0>]>;
>>
>>
>> Can someone explain  what LLVMMatchType does and how to specify it
>> to match the first argument and not the return value?
>>
>> I've tried LLVMMatchType<1> but it fails in IntrinsicEmitter.cpp
>
> Can you give some more info about how LLVMMatchType<1> fails?  That
> should do what you want.
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
>
> _______________________________________________
> 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