Displaying 16 results from an estimated 16 matches for "int_ptx_max".
2011 Nov 19
1
[LLVMdev] llvm_anyint_ty clarification
...uot;
where .type can be:
.type = { .u16, .u32, .u64,
.s16, .s32, .s64 };
The presence of multiple types requires llvm.ptx.max
to be overloaded for i16, i32 and i64.
So I think that the right way to define the intrinsic would be
(as in the attached max_not_working.patch file):
def int_ptx_max : Intrinsic<[llvm_anyint_ty],
[LLVMMatchType<0>, LLVMMatchType<0>],
[Commutative]>;
The problem is that the builtin is not recognised in the following test case:
define ptx_device i16 @max_16(i16 %a, i16 %b) {
entry:
%d =...
2011 Nov 16
4
[LLVMdev] PTX builtin functions.
Dear Justin,
I am trying to add the support for some OpenCL builtin functions to
the PTX backend.
The attached file represent the first stub of a patch for the fmax
builtin function.
The test case I am trying is the following:
define ptx_device float @f(float %x, float %y) {
entry:
%z = call float @fmax(float %x, float %y)
ret float %z
}
declare float @fmax(float, float)
But at the moment
2011 Nov 16
0
[LLVMdev] PTX builtin functions.
...e, and then implement a
pattern-match in the PTXInstrInfo.td file. There is no need to create a
new SDNode type for intrinsics, unless they require some special handling
in the C++ code, which I do not see being the case here.
When you define a new intrinsic, use the following template as a name:
int_ptx_max. This will define the LLVM intrinsic as @llvm.ptx.max().
Please follow the same convention when naming the __builtin_* function.
>
> The test case I am trying is the following:
>
> define ptx_device float @f(float %x, float %y) {
> entry:
> %z = call float @fmax(float %x, fl...
2011 Nov 21
1
[LLVMdev] PTX builtin functions.
...goes in
> >> PTXInstrinsicInstrInfo.td.
> >>
> >
> > Thank you for the pointers I will let you know when I have the first
> patch.
> >
> >>>
> >>> When you define a new intrinsic, use the following template as a name:
> >>> int_ptx_max. This will define the LLVM intrinsic as @llvm.ptx.max().
> >>> Please follow the same convention when naming the __builtin_*
> function.
> >>>
> >>>>
> >>>> The test case I am trying is the following:
> >>>>
> >>>...
2011 Nov 21
0
[LLVMdev] PTX builtin functions.
...nstrInfo.td.
>> >>
>> >
>> > Thank you for the pointers I will let you know when I have the first
>> > patch.
>> >
>> >>>
>> >>> When you define a new intrinsic, use the following template as a name:
>> >>> int_ptx_max. This will define the LLVM intrinsic as @llvm.ptx.max().
>> >>> Please follow the same convention when naming the __builtin_*
>> >>> function.
>> >>>
>> >>>>
>> >>>> The test case I am trying is the following:
>&g...
2011 Nov 21
2
[LLVMdev] PTX builtin functions.
...> >
> >> > Thank you for the pointers I will let you know when I have the first
> >> > patch.
> >> >
> >> >>>
> >> >>> When you define a new intrinsic, use the following template as a
> name:
> >> >>> int_ptx_max. This will define the LLVM intrinsic as
> @llvm.ptx.max().
> >> >>> Please follow the same convention when naming the __builtin_*
> >> >>> function.
> >> >>>
> >> >>>>
> >> >>>> The test case I am t...
2011 Nov 22
0
[LLVMdev] PTX builtin functions.
...pointers I will let you know when I have the first
>> >> > patch.
>> >> >
>> >> >>>
>> >> >>> When you define a new intrinsic, use the following template as a
>> >> >>> name:
>> >> >>> int_ptx_max. This will define the LLVM intrinsic as
>> >> >>> @llvm.ptx.max().
>> >> >>> Please follow the same convention when naming the __builtin_*
>> >> >>> function.
>> >> >>>
>> >> >>>>
>>...
2011 Nov 22
2
[LLVMdev] PTX builtin functions.
...e the
> first
> >> >> > patch.
> >> >> >
> >> >> >>>
> >> >> >>> When you define a new intrinsic, use the following template
> as a
> >> >> >>> name:
> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
> >> >> >>> @llvm.ptx.max().
> >> >> >>> Please follow the same convention when naming the
> __builtin_*
> >> >> >>> function.
> >> >> >>>
> >> >&...
2011 Nov 23
2
[LLVMdev] PTX builtin functions.
...t; >> >> >> >
> >> >> >> >>>
> >> >> >> >>> When you define a new intrinsic, use the following template
> >> as a
> >> >> >> >>> name:
> >> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
> >> >> >> >>> @llvm.ptx.max().
> >> >> >> >>> Please follow the same convention when naming the
> >> __builtin_*
> >> >> >> >>> function.
> >> >&...
2011 Nov 23
0
[LLVMdev] PTX builtin functions.
...t;> >> > patch.
>> >> >> >
>> >> >> >>>
>> >> >> >>> When you define a new intrinsic, use the following template
>> as a
>> >> >> >>> name:
>> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
>> >> >> >>> @llvm.ptx.max().
>> >> >> >>> Please follow the same convention when naming the
>> __builtin_*
>> >> >> >>> function.
>> >> >> >>>...
2011 Nov 23
0
[LLVMdev] PTX builtin functions.
...> >
> > >> >> >> >>>
> > >> >> >> >>> When you define a new intrinsic, use the following template
> > >> as a
> > >> >> >> >>> name:
> > >> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
> > >> >> >> >>> @llvm.ptx.max().
> > >> >> >> >>> Please follow the same convention when naming the
> > >> __builtin_*
> > >> >> >> >>> function....
2011 Dec 04
2
[LLVMdev] PTX builtin functions.
...gt; >> >> >> >>>
>> > >> >> >> >>> When you define a new intrinsic, use the following template
>> > >> as a
>> > >> >> >> >>> name:
>> > >> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
>> > >> >> >> >>> @llvm.ptx.max().
>> > >> >> >> >>> Please follow the same convention when naming the
>> > >> __builtin_*
>> > >> >> >> >&g...
2011 Nov 21
0
[LLVMdev] How to get ELF section virtual starting address from MCSymbolRefExpr?
...uot;
where .type can be:
.type = { .u16, .u32, .u64,
.s16, .s32, .s64 };
The presence of multiple types requires llvm.ptx.max
to be overloaded for i16, i32 and i64.
So I think that the right way to define the intrinsic would be
(as in the attached max_not_working.patch file):
def int_ptx_max : Intrinsic<[llvm_anyint_ty],
[LLVMMatchType<0>, LLVMMatchType<0>],
[Commutative]>;
The problem is that the builtin is not recognised in the following test case:
define ptx_device i16 @max_16(i16 %a, i16 %b) {
entry:
%d =...
2011 Dec 08
3
[LLVMdev] PTX builtin functions.
...gt; >> >> >> >>>
>> > >> >> >> >>> When you define a new intrinsic, use the following template
>> > >> as a
>> > >> >> >> >>> name:
>> > >> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
>> > >> >> >> >>> @llvm.ptx.max().
>> > >> >> >> >>> Please follow the same convention when naming the
>> > >> __builtin_*
>> > >> >> >> >&g...
2011 Dec 05
0
[LLVMdev] PTX builtin functions.
...;> >>>
> >> > >> >> >> >>> When you define a new intrinsic, use the following
> template
> >> > >> as a
> >> > >> >> >> >>> name:
> >> > >> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
> >> > >> >> >> >>> @llvm.ptx.max().
> >> > >> >> >> >>> Please follow the same convention when naming the
> >> > >> __builtin_*
> >> > >> >...
2011 Dec 08
0
[LLVMdev] PTX builtin functions.
...;> >>>
> >> > >> >> >> >>> When you define a new intrinsic, use the following
> template
> >> > >> as a
> >> > >> >> >> >>> name:
> >> > >> >> >> >>> int_ptx_max. This will define the LLVM intrinsic as
> >> > >> >> >> >>> @llvm.ptx.max().
> >> > >> >> >> >>> Please follow the same convention when naming the
> >> > >> __builtin_*
> >> > >> >...