.file "20000715-1.c" .text .align 2 .globl test1 .type test1, @function test1: link.w %a6,#0 unlk %a6 rts .size test1, .-test1 .align 2 .globl test2 .type test2, @function test2: link.w %a6,#0 unlk %a6 rts .size test2, .-test2 .align 2 .globl test3 .type test3, @function test3: link.w %a6,#0 unlk %a6 rts .size test3, .-test3 .align 2 .type init_xy, @function init_xy: link.w %a6,#0 moveq.l #3,%d0 move.l %d0,x moveq.l #2,%d0 move.l %d0,y unlk %a6 rts .size init_xy, .-init_xy .align 2 .globl test4 .type test4, @function test4: link.w %a6,#0 move.l %d2,-(%sp) jbsr init_xy move.l x,%d1 move.l y,%d0 cmp.l %d1,%d0 jble .L22 addq.l #1,%d1 move.l %d1,x moveq.l #3,%d0 cmp.l %d1,%d0 jbeq .L21 .L26: jbsr abort .align 2 .L21: moveq.l #3,%d0 cmp.l %d1,%d0 jbne .L26 moveq.l #3,%d2 cmp.l y,%d2 jbeq .L20 jbra .L26 .align 2 .L22: move.l %d0,%d2 addq.l #1,%d2 move.l %d2,y moveq.l #2,%d2 cmp.l %d0,%d2 jbne .L26 jbra .L21 .align 2 .L20: move.l -4(%a6),%d2 unlk %a6 rts .size test4, .-test4 .align 2 .globl test5 .type test5, @function test5: link.w %a6,#0 jbsr init_xy move.l x,%d1 move.l y,%d0 cmp.l %d1,%d0 jble .L28 move.l %d1,%d0 addq.l #1,x .L29: moveq.l #2,%d1 cmp.l %d0,%d1 jbne .L33 moveq.l #3,%d0 cmp.l x,%d0 jbne .L33 moveq.l #3,%d1 cmp.l y,%d1 jbeq .L27 jbra .L33 .align 2 .L28: addq.l #1,y jbra .L29 .align 2 .L33: jbsr abort .align 2 .L27: unlk %a6 rts .size test5, .-test5 .align 2 .globl test6 .type test6, @function test6: link.w %a6,#0 jbsr init_xy move.l y,%d0 moveq.l #3,%d1 cmp.l %d0,%d1 jbge .L35 move.l x,%d0 addq.l #1,x .L36: moveq.l #2,%d1 cmp.l %d0,%d1 jbne .L40 moveq.l #3,%d0 cmp.l x,%d0 jbne .L40 moveq.l #3,%d1 cmp.l y,%d1 jbeq .L34 jbra .L40 .align 2 .L35: addq.l #1,y jbra .L36 .align 2 .L40: jbsr abort .align 2 .L34: unlk %a6 rts .size test6, .-test6 .align 2 .globl main .type main, @function main: link.w %a6,#0 jbsr test1 jbsr test2 jbsr test3 jbsr test4 jbsr test5 jbsr test6 clr.l -(%sp) jbsr exit nop .size main, .-main .comm x,4,2 .comm y,4,2 .ident "GCC: (GNU) 3.3.2"