.file "941015-1.c" .text .align 2 .globl foo1 .type foo1, @function foo1: link.w %a6,#0 move.l %d2,-(%sp) move.l #-1073741824,%d1 move.l #-2147483648,%d2 cmp.l 8(%a6),%d1 jbne .L4 cmp.l 12(%a6),%d2 sls %d0 jbra .L5 .L4: sle %d0 .L5: extb.l %d0 moveq.l #1,%d2 sub.l %d0,%d2 move.l %d2,%d0 move.l (%sp)+,%d2 unlk %a6 rts .size foo1, .-foo1 .align 2 .globl foo2 .type foo2, @function foo2: link.w %a6,#0 move.l %d2,-(%sp) move.l #-1073741824,%d1 move.l #2147483647,%d2 cmp.l 8(%a6),%d1 jbne .L9 cmp.l 12(%a6),%d2 .L9: scs %d0 extb.l %d0 moveq.l #1,%d2 sub.l %d0,%d2 move.l %d2,%d0 move.l (%sp)+,%d2 unlk %a6 rts .size foo2, .-foo2 .align 2 .globl main .type main, @function main: link.w %a6,#0 move.l %d2,-(%sp) pea 1.w move.l #-1073741824,-(%sp) jbsr foo1 move.l %d0,%d2 move.l #-1073741824,(%sp) move.l #1,4(%sp) jbsr foo2 addq.l #8,%sp cmp.l %d2,%d0 jbne .L12 moveq.l #1,%d0 cmp.l %d2,%d0 jbeq .L11 .L12: jbsr abort .align 2 .L11: clr.l -(%sp) jbsr exit nop .size main, .-main .ident "GCC: (GNU) 3.3.2"