.file "920721-4.c" .text .little .text .align 1 .align 5 .type do_switch.0, @function do_switch.0: mov.l r14,@-r15 add #-1,r4 add #-4,r15 mov #5,r1 cmp/hi r1,r4 mov r15,r14 mov.l .L20,r0 bt/s .L9 mov.l r3,@r14 mova .L18,r0 mov.b @(r0,r4),r1 extu.b r1,r1 braf r1 nop .L19: .align 2 .L18: .byte .L11-.L19 .byte .L12-.L19 .byte .L13-.L19 .byte .L14-.L19 .byte .L15-.L19 .byte .L16-.L19 .align 5 .L11: mov.l .L21,r0 .L9: add #4,r14 .L28: mov r14,r15 rts mov.l @r15+,r14 .align 5 .L12: mov.l .L22,r0 bra .L28 add #4,r14 .align 5 .L13: mov.l .L23,r0 bra .L28 add #4,r14 .align 5 .L14: mov.l .L24,r0 bra .L28 add #4,r14 .align 5 .L15: mov.l .L25,r0 bra .L28 add #4,r14 .align 5 .L16: mov.l .L26,r0 bra .L28 add #4,r14 .L27: .align 2 .L20: .long .L8 .L21: .long .L2 .L22: .long .L3 .L23: .long .L4 .L24: .long .L5 .L25: .long .L6 .L26: .long .L7 .size do_switch.0, .-do_switch.0 .align 1 .align 5 .global try .type try, @function try: mov.l r14,@-r15 sts.l pr,@-r15 mov.l .L30,r0 add #-32,r15 mov r15,r14 jsr @r0 mov r14,r3 jmp @r0 nop .align 5 .L2: mov #1,r0 .L1: add #32,r14 mov r14,r15 lds.l @r15+,pr rts mov.l @r15+,r14 .align 5 .L3: bra .L1 mov #2,r0 .align 5 .L4: bra .L1 mov #3,r0 .align 5 .L5: bra .L1 mov #4,r0 .align 5 .L6: bra .L1 mov #5,r0 .align 5 .L7: bra .L1 mov #6,r0 .align 5 .L8: bra .L1 mov #-1,r0 .L31: .align 2 .L30: .long do_switch.0 .size try, .-try .align 1 .align 5 .global main .type main, @function main: mov.l r8,@-r15 mov #1,r8 mov.l r9,@-r15 mov #6,r9 mov.l r10,@-r15 mov.l r14,@-r15 mov.l .L43,r10 sts.l pr,@-r15 mov r15,r14 .L38: jsr @r10 mov r8,r4 cmp/eq r8,r0 bf/s .L41 add #1,r8 cmp/gt r9,r8 bf .L38 bra .L42 nop .align 5 .L41: mov.l .L44,r1 jsr @r1 nop .align 5 .L42: mov.l .L45,r1 jsr @r1 mov #0,r4 .L46: .align 2 .L43: .long try .L44: .long abort .L45: .long exit .size main, .-main .ident "GCC: (GNU) 3.3.2"