.file "signext.c" .section .rodata.str1.1,"aMS",@progbits,1 .LC0: .string " %d, %d\n" .text .align 2 .globl longprint .type longprint, @function longprint: link.w %a6,#0 move.l 8(%a6),%d0 move.l 12(%a6),%d1 move.l %d1,-(%sp) move.l %d0,-(%sp) pea .LC0 jbsr printf unlk %a6 rts .size longprint, .-longprint .globl __moddi3 .align 2 .globl k_min .type k_min, @function k_min: link.w %a6,#0 movm.l #0x3c00,-(%sp) move.l 16(%a6),%a1 moveq.l #1,%d0 cmp.l %d0,%a1 jbgt .L3 sub.l %a1,%d0 .L3: lsl.l #3,%d0 move.l %d0,%d2 muls.l #1431655766,%d1:%d2 move.l %d1,%a0 move.l %d0,%d2 add.l %d2,%d2 subx.l %d2,%d2 sub.l %d2,%a0 lea (%a0,%a0.l*2),%a0 sub.l %a0,%d0 move.l %d0,%d1 smi %d0 extb.l %d0 move.l 12(%a6),%d3 smi %d2 extb.l %d2 move.l %a1,%d5 smi %d4 extb.l %d4 move.l %d5,-(%sp) move.l %d4,-(%sp) add.l %d3,%d1 addx.l %d2,%d0 move.l %d1,-(%sp) move.l %d0,-(%sp) jbsr __moddi3 lea (16,%sp),%sp move.l %d1,-(%sp) move.l %d0,-(%sp) jbsr longprint movm.l -16(%a6),#0x3c unlk %a6 rts .size k_min, .-k_min .align 2 .globl main .type main, @function main: link.w %a6,#0 pea 3.w move.l #-600017,-(%sp) move.l #100003,-(%sp) jbsr k_min clr.l %d0 unlk %a6 rts .size main, .-main .ident "GCC: (GNU) 3.3.2"