.file "loop-5.c" .text .align 2 .type testit, @function testit: link.w %a6,#-16 movm.l #0x3020,-(%sp) clr.l -16(%a6) moveq.l #1,%d0 move.l %d0,-12(%a6) moveq.l #2,%d1 move.l %d1,-8(%a6) moveq.l #3,%d0 move.l %d0,-4(%a6) moveq.l #1,%d0 lea ap,%a2 moveq.l #3,%d2 .align 2 .L8: moveq.l #4,%d3 moveq.l #1,%d1 cmp.l %d0,%d1 jbeq .L7 move.l %d0,%d3 subq.l #1,%d3 .L7: move.l -20(%a6,%d0.l*4),-(%sp) jbsr (%a2) move.l %d3,%d0 addq.l #4,%sp subq.l #1,%d2 jbpl .L8 movm.l -28(%a6),#0x40c unlk %a6 rts .size testit, .-testit .local t .comm t,4,2 .align 2 .type ap, @function ap: link.w %a6,#0 move.l t,%d0 moveq.l #3,%d1 cmp.l %d0,%d1 jbge .L12 jbsr abort .align 2 .L12: lea a,%a0 move.l 8(%a6),(%a0,%d0.l*4) addq.l #1,t moveq.l #1,%d0 unlk %a6 rts .size ap, .-ap .align 2 .globl main .type main, @function main: link.w %a6,#0 jbsr testit tst.l a jbne .L18 moveq.l #3,%d0 cmp.l a+4,%d0 jbne .L18 moveq.l #2,%d0 cmp.l a+8,%d0 jbne .L18 moveq.l #1,%d0 cmp.l a+12,%d0 jbeq .L17 .L18: jbsr abort .align 2 .L17: clr.l -(%sp) jbsr exit nop .size main, .-main .local a .comm a,16,2 .ident "GCC: (GNU) 3.3.2"