.file "990811-1.c" .text .align 2 .globl foo .type foo, @function foo: link.w %a6,#0 move.l 8(%a6),%d0 move.l 12(%a6),%a0 moveq.l #1,%d1 cmp.l %d0,%d1 jbeq .L4 jbge .L9 moveq.l #2,%d1 cmp.l %d0,%d1 jbeq .L5 .L2: jbsr abort .align 2 .L5: move.w (%a0),%d0 ext.l %d0 jbra .L1 .align 2 .L9: tst.l %d0 jbne .L2 move.l (%a0),%d0 jbra .L1 .align 2 .L4: move.b (%a0),%d0 extb.l %d0 .L1: unlk %a6 rts .size foo, .-foo .align 2 .globl main .type main, @function main: link.w %a6,#-40 move.l %a2,-(%sp) moveq.l #1,%d0 move.l %d0,-38(%a6) moveq.l #2,%d1 move.l %d1,-34(%a6) clr.l %d0 lea (-30,%a6),%a1 lea (-20,%a6),%a0 .align 2 .L15: move.w %d0,(%a0)+ move.b %d0,(%a1)+ addq.l #1,%d0 moveq.l #9,%d1 cmp.l %d0,%d1 jbge .L15 pea -38(%a6) clr.l -(%sp) lea foo,%a2 jbsr (%a2) addq.l #8,%sp moveq.l #1,%d1 cmp.l %d0,%d1 jbne .L21 pea -27(%a6) pea 1.w jbsr (%a2) addq.l #8,%sp moveq.l #3,%d1 cmp.l %d0,%d1 jbne .L21 pea -14(%a6) pea 2.w jbsr (%a2) addq.l #8,%sp moveq.l #3,%d1 cmp.l %d0,%d1 jbeq .L18 .L21: jbsr abort .align 2 .L18: clr.l -(%sp) jbsr exit nop .size main, .-main .ident "GCC: (GNU) 3.3.2"