.file "i386-call-1.c" .text .align 2 .globl set_eax .type set_eax, @function set_eax: link.w %a6,#0 #APP mov 8(%a6), %eax #NO_APP unlk %a6 rts .size set_eax, .-set_eax .align 2 .globl foo .type foo, @function foo: link.w %a6,#0 move.l 8(%a6),r unlk %a6 rts .size foo, .-foo .align 2 .globl bar .type bar, @function bar: link.w %a6,#0 move.l %d2,-(%sp) move.l 8(%a6),%d2 jbeq .L4 clr.l -(%sp) jbsr set_eax move.l %d2,%d0 jbra .L3 .align 2 .L4: clr.l -(%sp) jbsr foo .L3: move.l -4(%a6),%d2 unlk %a6 rts .size bar, .-bar .align 2 .globl main .type main, @function main: link.w %a6,#0 pea 1.w jbsr bar addq.l #4,%sp moveq.l #1,%d1 cmp.l %d0,%d1 jbeq .L6 jbsr abort .align 2 .L6: clr.l %d0 unlk %a6 rts .size main, .-main .comm r,4,2 .ident "GCC: (GNU) 3.3.2"