.file "20010912-1.c" .section .rodata.str1.1,"aMS",@progbits,1 .LC0: .string "def" .text .align 2 .globl bar .type bar, @function bar: link.w %a6,#0 move.l 12(%a6),%a1 moveq.l #56,%d0 cmp.l 8(%a6),%d0 jbne .L4 move.l (%a1),%a0 cmp.b #97,(%a0) jbeq .L3 .L4: jbsr abort .align 2 .L3: move.l #.LC0,(%a1) moveq.l #1,%d0 unlk %a6 rts .size bar, .-bar .align 2 .globl baz .type baz, @function baz: link.w %a6,#0 moveq.l #56,%d0 cmp.l 8(%a6),%d0 jbne .L8 move.l 12(%a6),%a0 move.l (%a0),%a0 cmp.b #97,(%a0) jbeq .L7 .L8: jbsr abort .align 2 .L7: moveq.l #26,%d0 unlk %a6 rts .size baz, .-baz .align 2 .globl foo .type foo, @function foo: link.w %a6,#0 move.l %d3,-(%sp) move.l %d2,-(%sp) move.l 8(%a6),%d3 move.l 12(%a6),%d2 pea 12(%a6) move.l %d3,-(%sp) jbsr bar addq.l #8,%sp tst.l %d0 jbne .L12 .L10: tst.l %d0 jbne .L9 pea 12(%a6) move.l %d3,-(%sp) jbsr baz clr.l %d0 jbra .L9 .align 2 .L12: move.l %d2,12(%a6) pea 12(%a6) move.l %d3,-(%sp) jbsr baz addq.l #8,%sp jbra .L10 .align 2 .L9: move.l -8(%a6),%d2 move.l -4(%a6),%d3 unlk %a6 rts .size foo, .-foo .section .rodata.str1.1 .LC1: .string "abc" .text .align 2 .globl main .type main, @function main: link.w %a6,#0 pea .LC1 pea 56.w jbsr foo addq.l #8,%sp moveq.l #26,%d1 cmp.l %d0,%d1 jbeq .L14 jbsr abort .align 2 .L14: clr.l -(%sp) jbsr exit nop .size main, .-main .ident "GCC: (GNU) 3.3.2"