[LLVMdev] Overloaded intrinsics: name explosion
Philip Reames
listmail at philipreames.com
Fri Jan 16 10:41:13 PST 2015
On 01/16/2015 09:20 AM, Ramkumar Ramachandra wrote:
> Shahid, Asghar-ahmad wrote:
>> So an intrinsic declared with 'ifavpAny' can take different overloaded form such as
>> From llvm.xyz(i32) to llvm.xyz(4xi32)
> Yes, that's correct. Just to fix the notation, let's use real code
> from my branch:
>
> def llvm_any_ty : LLVMType<Any>;
> def int_experimental_gc_result : Intrinsic<[llvm_any_ty], [llvm_i32_ty]>;
>
> Then:
> %call1 = call i32* @llvm.experimental.gc.result.p0i32(...)
> %call1 = call float @llvm.experimental.gc.result.f32(...)
> %call1 = call zeroext i32 @llvm.experimental.gc.result.i32(...)
> %call1 = call zeroext <2 x i32> @llvm.experimental.gc.result.v2i32(...)
>
> etc.
>
> I hope to have it properly functioning soon.
This looks great. :) Thanks for pursuing this.
Philip
More information about the llvm-dev
mailing list