.file "20000313-1.c" .text .align 2 .globl buggy .type buggy, @function buggy: link.w %a6,#0 move.l %d2,-(%sp) move.l 8(%a6),%a0 move.l (%a0),%d2 move.l %d2,%d1 neg.l %d1 sne %d0 extb.l %d0 add.l %d1,%d2 move.l %d2,(%a0) move.l (%sp)+,%d2 unlk %a6 rts .size buggy, .-buggy .align 2 .globl main .type main, @function main: link.w %a6,#-4 moveq.l #1,%d0 move.l %d0,-4(%a6) pea -4(%a6) jbsr buggy addq.l #4,%sp tst.l -4(%a6) jbne .L7 moveq.l #-1,%d1 cmp.l %d0,%d1 jbeq .L6 .L7: jbsr abort .align 2 .L6: clr.l %d0 unlk %a6 rts .size main, .-main .ident "GCC: (GNU) 3.3.2"