Displaying 3 results from an estimated 3 matches for "anonymous_1373".
2016 Mar 30
2
Instruction selection pattern for intrinsic returning llvm_any_ty
..._0_7:$src1, aNh_0_7:$src2)>;
So I've done a pattern the same way I've done for numerous other
intrinsics (that returns simple types like i16/i32 etc):
def : Pat<(int_phx_divm_u16 i16:$src1, i16:$src2),
(divm16_pseudo $src1, $src2)>;
But this doesn't work for me:
anonymous_1373(src1, src2): (divm16_pseudo:i16:i16:i16 ?: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...
2016 Mar 30
0
Instruction selection pattern for intrinsic returning llvm_any_ty
...need to add an explicit i16 around the instruction (e.g. (i16 (divm16_pseudo …)), tlahough the error message does look like it’s having trouble with the operands. You can try inserting the explicit i16:$src1 there if that still doesn’t work
>
> But this doesn't work for me:
>
> anonymous_1373(src1, src2): (divm16_pseudo:i16:i16:i16 ?: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 thi...
2016 Mar 30
2
Instruction selection pattern for intrinsic returning llvm_any_ty
..._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
>
>
>>
>> But this doesn't work for me:
>>
>> anonymous_1373(src1, src2): (divm16_pseudo:i16:i16:i16 ?: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 wa...