Displaying 9 results from an estimated 9 matches for "instcombinemldivrem".
2013 Aug 08
13
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...le %div, %a
%mul1 = fmul fast double %div, %b
%call = tail call i32 @foo(double %mul, double %mul1)
ret void
}
Is such a transformation best done as a (target-specific) DAG combine?
A similar instcombine already exists for the X/C->X*1/C case (see the
CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I don't
believe the above can be done as an instcombine as it creates a new
instruction (in addition to replacing the original). Also, I only want to
perform the transformation if there are multiple uses of 1/Y (like in my
test case). Otherwise, the transformation replaces a fdiv wi...
2013 Aug 08
3
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...call i32 @foo(double %mul, double %mul1)
>> ret void
>> }
>>
>> Is such a transformation best done as a (target-specific) DAG combine?
>>
>> A similar instcombine already exists for the X/C->X*1/C case (see the
>> CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I
>> don't believe the above can be done as an instcombine as it creates a
>> new instruction (in addition to replacing the original). Also, I
>> only want to perform the transformation if there are multiple uses of
>> 1/Y (like in my test case). Otherwis...
2013 Aug 08
0
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...%div, %b
> %call = tail call i32 @foo(double %mul, double %mul1)
> ret void
> }
>
> Is such a transformation best done as a (target-specific) DAG combine?
>
> A similar instcombine already exists for the X/C->X*1/C case (see the
> CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I
> don't believe the above can be done as an instcombine as it creates a
> new instruction (in addition to replacing the original). Also, I only
> want to perform the transformation if there are multiple uses of 1/Y
> (like in my test case). Otherwise, the transform...
2013 Aug 08
0
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...ble %div, %b
> %call = tail call i32 @foo(double %mul, double %mul1)
> ret void
> }
>
> Is such a transformation best done as a (target-specific) DAG combine?
>
> A similar instcombine already exists for the X/C->X*1/C case (see the CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I don't believe the above can be done as an instcombine as it creates a new instruction (in addition to replacing the original). Also, I only want to perform the transformation if there are multiple uses of 1/Y (like in my test case). Otherwise, the transformation replaces a fdiv wi...
2013 Aug 08
0
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...ble %div, %b
> %call = tail call i32 @foo(double %mul, double %mul1)
> ret void
> }
>
> Is such a transformation best done as a (target-specific) DAG combine?
>
> A similar instcombine already exists for the X/C->X*1/C case (see the CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I don't believe the above can be done as an instcombine as it creates a new instruction (in addition to replacing the original). Also, I only want to perform the transformation if there are multiple uses of 1/Y (like in my test case). Otherwise, the transformation replaces a fdiv wi...
2013 Aug 08
0
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...ouble %mul, double %mul1)
>>> ret void
>>> }
>>>
>>> Is such a transformation best done as a (target-specific) DAG combine?
>>>
>>> A similar instcombine already exists for the X/C->X*1/C case (see the CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I don't believe the above can be done as an instcombine as it creates a new instruction (in addition to replacing the original). Also, I only want to perform the transformation if there are multiple uses of 1/Y (like in my test case). Otherwise, the transformation replaces a fdiv wi...
2013 Aug 08
2
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...l = tail call i32 @foo(double %mul, double %mul1)
>> ret void
>> }
>>
>> Is such a transformation best done as a (target-specific) DAG combine?
>>
>> A similar instcombine already exists for the X/C->X*1/C case (see the CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I don't believe the above can be done as an instcombine as it creates a new instruction (in addition to replacing the original). Also, I only want to perform the transformation if there are multiple uses of 1/Y (like in my test case). Otherwise, the transformation replaces a fdiv wi...
2013 Aug 08
0
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...div, %b
> %call = tail call i32 @foo(double %mul, double %mul1)
> ret void
> }
>
> Is such a transformation best done as a (target-specific) DAG combine?
>
> A similar instcombine already exists for the X/C->X*1/C case (see the
> CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I
> don't believe the above can be done as an instcombine as it creates a
> new instruction (in addition to replacing the original). Also, I only
> want to perform the transformation if there are multiple uses of 1/Y
> (like in my test case). Otherwise, the transformatio...
2013 Aug 08
0
[LLVMdev] Convert fdiv - X/Y -> X*1/Y
...%div, %b
> %call = tail call i32 @foo(double %mul, double %mul1)
> ret void
> }
>
> Is such a transformation best done as a (target-specific) DAG combine?
>
> A similar instcombine already exists for the X/C->X*1/C case (see the
> CvtFDivConstToReciprocal function in InstCombineMlDivRem.cpp), but I don't
> believe the above can be done as an instcombine as it creates a new
> instruction (in addition to replacing the original). Also, I only want to
> perform the transformation if there are multiple uses of 1/Y (like in my
> test case). Otherwise, the transformatio...