[llvm-commits] [llvm] r126964 - in /llvm/trunk: lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp lib/CodeGen/SelectionDAG/LegalizeTypes.h test/CodeGen/X86/umulo-64.ll
Eli Friedman
eli.friedman at gmail.com
Thu Mar 3 16:57:32 PST 2011
On Thu, Mar 3, 2011 at 4:21 PM, Eric Christopher <echristo at apple.com> wrote:
>
> On Mar 3, 2011, at 4:16 PM, Eric Christopher wrote:
>
>> Here's a simple patch that fixes the problem in something resembling correctness, but uses divide to do it - so yeah, performance?
>>
>> Thoughts?
>
> Uh, other than divide by zero.
>
> *fixes*
>
> -eric
It should work. The only other approach I can think of involves
essentially taking your previous approach, but doubling the width of
the multiplication. There isn't any code in LLVM at the moment to
turn a 64x64->128 multiply into 32x32->64 multiplies, but it is
feasible.
-Eli
More information about the llvm-commits
mailing list