.file "20020218-1.c" .text .align 2 .globl bar .type bar, @function bar: link.w %a6,#0 moveq.l #26,%d0 cmp.l 8(%a6),%d0 jbne .L3 moveq.l #35,%d0 cmp.l 12(%a6),%d0 jbeq .L2 .L3: jbsr abort .align 2 .L2: move.w #76,%a0 move.l %a0,%d0 unlk %a6 rts .size bar, .-bar .align 2 .globl foo .type foo, @function foo: link.w %a6,#-32 move.l %a2,-(%sp) move.l %d2,-(%sp) move.l 8(%a6),%a2 lea (4,%a2),%a0 move.l %a0,-32(%a6) move.l %sp,%d2 subq.l #8,%sp move.l %sp,%d0 pea 8.w move.l %a0,-(%sp) move.l %d0,-(%sp) jbsr memcpy lea (12,%sp),%sp move.l -28(%a6),%a1 move.l (%a2),%a0 jbsr (%a0) move.l %d0,-28(%a6) move.l %d1,-24(%a6) move.l %a0,-20(%a6) move.l %a1,-16(%a6) fmove.x %fp0,-12(%a6) move.l %d2,%sp move.l -28(%a6),%d0 move.l -24(%a6),%d1 move.l -20(%a6),%a0 move.l -16(%a6),%a1 fmove.x -12(%a6),%fp0 move.l %a0,%d0 move.l -40(%a6),%d2 move.l -36(%a6),%a2 unlk %a6 rts .size foo, .-foo .align 2 .globl main .type main, @function main: link.w %a6,#-12 move.l #bar,-12(%a6) moveq.l #26,%d0 move.l %d0,-8(%a6) moveq.l #35,%d0 move.l %d0,-4(%a6) pea -12(%a6) jbsr foo addq.l #4,%sp moveq.l #76,%d0 cmp.l %a0,%d0 jbeq .L6 jbsr abort .align 2 .L6: clr.l -(%sp) jbsr exit nop .size main, .-main .ident "GCC: (GNU) 3.3.2"