Displaying 8 results from an estimated 8 matches for "rec6".
Did you mean:
rc6
2016 Mar 30
2
Instruction selection pattern for intrinsic returning llvm_any_ty
...:$src2)
>>>> and a few other variants without managing to get it through.
>>>>
>>>> Thanks again,
>>>> Mikael
>>>
>>> Are you trying to return multiple values?
>>
>> Yes, the intrisic returns a record
>>
>> %rec6 = type { i16, i16 }
>>
>> so at instructions selection the original call
>>
>> %_tmp3 = call %rec6 @llvm.phx.divm.u16.rec6(i16 %_tmp1, i16 %_tmp2)
>>
>> has been lowered to
>>
>> t6: i16,i16 = llvm.phx.divm.u16 TargetConstant:i16<3778>, t2,...
2016 Mar 30
2
Instruction selection pattern for intrinsic returning llvm_any_ty
...$src1, i16:$src2)
>> and
>> ((i16, i16) (divm16_pseudo i16:$src1, i16:$src2)
>> and a few other variants without managing to get it through.
>>
>> Thanks again,
>> Mikael
>
> Are you trying to return multiple values?
Yes, the intrisic returns a record
%rec6 = type { i16, i16 }
so at instructions selection the original call
%_tmp3 = call %rec6 @llvm.phx.divm.u16.rec6(i16 %_tmp1, i16 %_tmp2)
has been lowered to
t6: i16,i16 = llvm.phx.divm.u16 TargetConstant:i16<3778>, t2, t4
and the instruction I want to select also returns two values...
2016 Mar 30
2
Instruction selection pattern for intrinsic returning llvm_any_ty
...6 ?:i16:$src1,
?:i16:$src2)
error: In anonymous_1373: Type inference contradiction found, merging
'i16' into 'Any'
def : Pat<(int_phx_divm_u16 i16:$src1, i16:$src2),
^
So is there a way I can get around this?
Before ISel the call to my intrisic looks like
%_tmp3 = call %rec6 @llvm.phx.divm.u16.rec6(i16 %_tmp1, i16 %_tmp2)
and %rec6 is
%rec6 = type { i16, i16 }
Then at ISel, before selection the call is lowered to
t6: i16,i16 = llvm.phx.divm.u16 TargetConstant:i16<3778>, t2, t4
which fits nicely to my divm16_pseudo that I want to select.
Is there any w...
2016 Mar 30
0
Instruction selection pattern for intrinsic returning llvm_any_ty
...r variants without managing to get it through.
>>>>>
>>>>> Thanks again,
>>>>> Mikael
>>>>
>>>> Are you trying to return multiple values?
>>>
>>> Yes, the intrisic returns a record
>>>
>>> %rec6 = type { i16, i16 }
>>>
>>> so at instructions selection the original call
>>>
>>> %_tmp3 = call %rec6 @llvm.phx.divm.u16.rec6(i16 %_tmp1, i16 %_tmp2)
>>>
>>> has been lowered to
>>>
>>> t6: i16,i16 = llvm.phx.divm.u16 Ta...
2016 Mar 30
0
Instruction selection pattern for intrinsic returning llvm_any_ty
...6, i16) (divm16_pseudo i16:$src1, i16:$src2)
>>> and a few other variants without managing to get it through.
>>>
>>> Thanks again,
>>> Mikael
>>
>> Are you trying to return multiple values?
>
> Yes, the intrisic returns a record
>
> %rec6 = type { i16, i16 }
>
> so at instructions selection the original call
>
> %_tmp3 = call %rec6 @llvm.phx.divm.u16.rec6(i16 %_tmp1, i16 %_tmp2)
>
> has been lowered to
>
> t6: i16,i16 = llvm.phx.divm.u16 TargetConstant:i16<3778>, t2, t4
>
> and the instruct...
2016 Mar 30
0
Instruction selection pattern for intrinsic returning llvm_any_ty
...onymous_1373: Type inference contradiction found, merging 'i16' into 'Any'
> def : Pat<(int_phx_divm_u16 i16:$src1, i16:$src2),
> ^
>
> So is there a way I can get around this?
>
>
> Before ISel the call to my intrisic looks like
>
> %_tmp3 = call %rec6 @llvm.phx.divm.u16.rec6(i16 %_tmp1, i16 %_tmp2)
>
> and %rec6 is
>
> %rec6 = type { i16, i16 }
>
> Then at ISel, before selection the call is lowered to
>
> t6: i16,i16 = llvm.phx.divm.u16 TargetConstant:i16<3778>, t2, t4
>
> which fits nicely to my divm16...
2016 Mar 30
2
Instruction selection pattern for intrinsic returning llvm_any_ty
...radiction found, merging 'i16' into 'Any'
>> def : Pat<(int_phx_divm_u16 i16:$src1, i16:$src2),
>> ^
>>
>> So is there a way I can get around this?
>>
>>
>> Before ISel the call to my intrisic looks like
>>
>> %_tmp3 = call %rec6 @llvm.phx.divm.u16.rec6(i16 %_tmp1, i16 %_tmp2)
>>
>> and %rec6 is
>>
>> %rec6 = type { i16, i16 }
>>
>> Then at ISel, before selection the call is lowered to
>>
>> t6: i16,i16 = llvm.phx.divm.u16 TargetConstant:i16<3778>, t2, t4
>>
&g...
2016 Mar 30
0
Instruction selection pattern for intrinsic returning llvm_any_ty
> On Mar 30, 2016, at 11:35, Mikael Holmén <mikael.holmen at ericsson.com> wrote:
>
> i16 (divm16_pseudo …)
>
> stuff?
>
> I've tried
> (i16, i16 (divm16_pseudo i16:$src1, i16:$src2)
> and
> ((i16, i16) (divm16_pseudo i16:$src1, i16:$src2)
> and a few other variants without managing to get it through.
>
> Thanks again,
> Mikael
Are you