------- Comment #3 from ami_stuff at o2 dot pl 2009-09-02 15:32 ------- GCC 4.5.0 (20090827) - additional move.l compared to GCC 4.4.2 (20090825):
#NO_APP .text .even .globl _MUL64 _MUL64: movem.l #16128,-(sp) move.l 28(sp),a0 move.l 32(sp),a1 #APP ;# 45 "xxxx2.c" 1 | Inlined umul_ppmm move.l a0,d0 move.l a1,d1 move.l d0,d2 swap d0 move.l d1,d3 swap d1 move.w d2,d4 mulu d3,d4 mulu d1,d2 mulu d0,d3 mulu d0,d1 move.l d4,d0 eor.w d0,d0 swap d0 add.l d0,d2 add.l d3,d2 jcc 1f add.l #65536,d1 1: swap d2 moveq #0,d0 move.w d2,d0 move.w d4,d2 move.l d2,d6 add.l d1,d0 move.l d0,d5 #NO_APP move.l d5,d2 tst.l a0 jge L2 sub.l a1,d2 L2: tst.l a1 jge L3 sub.l a0,d2 L3: move.l d2,d0 clr.l d1 move.l d0,d2 move.l d1,d3 or.l d6,d3 move.l d2,d6 move.l d3,d7 move.l d2,d0 move.l d7,d1 movem.l (sp)+,#252 rts -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40977