.file "divconst-2.c" .text .align 2 .globl f .type f, @function f: link.w %a6,#0 cmp.l #-2147483648,8(%a6) seq %d0 extb.l %d0 neg.l %d0 unlk %a6 rts .size f, .-f .align 2 .globl r .type r, @function r: link.w %a6,#0 move.l %d2,-(%sp) move.l 8(%a6),%d0 cmp.l #-2147483648,%d0 seq %d1 extb.l %d1 moveq.l #31,%d2 lsl.l %d2,%d1 sub.l %d1,%d0 move.l (%sp)+,%d2 unlk %a6 rts .size r, .-r .align 2 .globl std_eqn .type std_eqn, @function std_eqn: link.w %a6,#0 move.l 16(%a6),%d0 moveq.l #31,%d1 lsl.l %d1,%d0 add.l 20(%a6),%d0 cmp.l 8(%a6),%d0 seq %d0 extb.l %d0 neg.l %d0 unlk %a6 rts .size std_eqn, .-std_eqn .globl nums .data .align 2 .type nums, @object .size nums, 12 nums: .long -1 .long 2147483647 .long -2147483648 .text .align 2 .globl main .type main, @function main: link.w %a6,#0 movm.l #0x303c,-(%sp) lea r,%a5 lea f,%a4 lea std_eqn,%a3 lea nums,%a2 move.l #nums+8,%d3 .L10: move.l (%a2),-(%sp) jbsr (%a5) move.l %d0,%d2 move.l (%a2),(%sp) jbsr (%a4) move.l %d2,(%sp) move.l %d0,-(%sp) move.l #-2147483648,-(%sp) move.l (%a2),-(%sp) jbsr (%a3) lea (16,%sp),%sp tst.l %d0 jbeq .L13 addq.l #4,%a2 cmp.l %a2,%d3 jbcc .L10 jbra .L14 .align 2 .L13: jbsr abort .align 2 .L14: clr.l -(%sp) jbsr exit nop .size main, .-main .ident "GCC: (GNU) 3.3.2"