.file "941014-2.c" .text .align 2 .globl f .type f, @function f: link.w %a6,#0 movm.l #0x3f00,-(%sp) move.l 8(%a6),%d2 subq.l #1,%d2 moveq.l #-1,%d1 cmp.l %d2,%d1 jbeq .L13 move.l 12(%a6),%d3 sub.l 16(%a6),%d3 move.l %d5,%d7 lsr.l %d5,%d7 move.l %d7,%d4 and.l %d0,%d4 eor.l %d0,%d4 .align 2 .L11: move.l %d3,%d1 divsl.l %d5,%d0:%d1 tst.l %d0 jblt .L14 .L9: moveq.l #32,%d1 cmp.l %d5,%d1 jbeq .L10 move.l %d6,%d0 lsl.l %d5,%d0 move.l %d0,%d1 or.l %d4,%d1 and.l (%a0),%d1 or.l %d7,%d0 and.l %d5,%d0 eor.l %d5,%d0 eor.l %d0,%d1 move.l %d1,(%a0) .L10: and.l %d6,(%a0) dbra %d2,.L11 clr.w %d2 subq.l #1,%d2 jbcc .L11 jbra .L13 .align 2 .L14: tst.l %d5 jbeq .L9 moveq.l #1,%d0 cmp.l %d5,%d0 jbne .L9 move.l %d5,%d6 jbra .L9 .align 2 .L13: movm.l (%sp)+,#0xfc unlk %a6 rts .size f, .-f .ident "GCC: (GNU) 3.3.2"