.set noat .set noreorder .set nomacro .globl expect_do1 .section .sdata,"aw",@progbits .align 2 .type expect_do1, @object .size expect_do1, 4 expect_do1: .long 1 .globl expect_do2 .align 2 .type expect_do2, @object .size expect_do2, 4 expect_do2: .long 2 .section .sbss,"aw" .type jtab_init.0, @object .size jtab_init.0, 4 .align 2 jtab_init.0: .zero 4 .section .bss .type jtab.1, @object .size jtab.1, 16 .align 3 jtab.1: .zero 16 .text .align 2 .align 4 .ent doit doit: .frame $30,0,$26,0 ldah $29,0($27) !gpdisp!1 lda $29,0($29) !gpdisp!1 $doit..ng: ldah $5,jtab_init.0($29) !gprelhigh lda $30,-32($30) .prologue 1 ldah $4,jtab.1($29) !gprelhigh ldl $1,jtab_init.0($5) !gprellow bne $1,$L4 lda $3,jtab.1($4) !gprellow ldah $1,$L2($29) !gprelhigh lda $1,$L2($1) !gprellow stq $1,jtab.1($4) !gprellow ldah $2,$L3($29) !gprelhigh lda $2,$L3($2) !gprellow stq $2,8($3) lda $1,1($31) stl $1,jtab_init.0($5) !gprellow $L4: lda $1,jtab.1($4) !gprellow s8addq $16,$1,$1 ldq $2,0($1) jmp $31,($2),0 .align 4 $L2: lda $0,1($31) $L1: lda $30,32($30) ret $31,($26),1 .align 4 $L3: lda $0,2($31) br $31,$L1 .end doit .align 2 .align 4 .ent do1 do1: .frame $30,0,$26,0 .mask 0x4000000,0 ldah $29,0($27) !gpdisp!2 lda $29,0($29) !gpdisp!2 $do1..ng: lda $30,-16($30) mov $31,$16 stq $26,0($30) .prologue 1 bsr $26,$doit..ng ldah $2,expect_do1($29) !gprelhigh ldl $1,expect_do1($2) !gprellow cmpeq $1,$0,$1 beq $1,$L9 ldq $26,0($30) lda $30,16($30) ret $31,($26),1 $L9: ldq $27,abort($29) !literal!3 jsr $26,($27),abort !lituse_jsr!3 .end do1 .align 2 .align 4 .ent do2 do2: .frame $30,0,$26,0 .mask 0x4000000,0 ldah $29,0($27) !gpdisp!4 lda $29,0($29) !gpdisp!4 $do2..ng: lda $30,-16($30) lda $16,1($31) stq $26,0($30) .prologue 1 bsr $26,$doit..ng ldah $2,expect_do2($29) !gprelhigh ldl $1,expect_do2($2) !gprellow cmpeq $1,$0,$1 beq $1,$L12 ldq $26,0($30) lda $30,16($30) ret $31,($26),1 $L12: ldq $27,abort($29) !literal!5 jsr $26,($27),abort !lituse_jsr!5 .end do2 .align 2 .align 4 .globl main .ent main main: .frame $30,0,$26,0 .mask 0x4000000,0 ldah $29,0($27) !gpdisp!6 lda $29,0($29) !gpdisp!6 $main..ng: lda $30,-16($30) stq $26,0($30) .prologue 1 bsr $26,$do1..ng bsr $26,$do2..ng mov $31,$16 ldq $27,exit($29) !literal!7 jsr $26,($27),exit !lituse_jsr!7 .end main .ident "GCC: (GNU) 3.3.2"