[LLVMdev] llvm-gcc promotes i32 mul to i64 inside __muldi3

Andrew Lenharth andrewl at lenharth.org
Wed Mar 17 14:17:41 PDT 2010


On Wed, Mar 17, 2010 at 3:54 PM, Eli Friedman <eli.friedman at gmail.com> wrote:
> On Wed, Mar 17, 2010 at 1:32 PM, Sergey Yakoushkin
> <sergey.yakoushkin at gmail.com> wrote:
>> I'm building tool-chain for processor without integer MUL.
>> So, I've defined __mulsi3 for integer multiplication (int32).
>>
>> Now I've got a problem with int64 multiplication which is implemented
>> in libgcc2.c.
>> Segfualt due to infinite recursion in i64 soft multiplication
>> (libgcc2, __muldi3).
>
> See http://llvm.org/bugs/show_bug.cgi?id=3101 which is essentially the
> same issue.

Alpha has the same problem with 128 Ints, in about the same functions.



More information about the llvm-dev mailing list