.set noat .set noreorder .set nomacro .text .align 2 .align 4 .globl foo .ent foo $foo..ng: foo: .frame $30,0,$26,0 .prologue 0 lda $1,8($31) stl $1,0($16) ret $31,($26),1 .end foo .align 2 .align 4 .globl bugger .ent bugger bugger: .frame $30,0,$26,0 .mask 0x4000000,0 ldah $29,0($27) !gpdisp!1 lda $29,0($29) !gpdisp!1 $bugger..ng: lda $30,-32($30) lda $16,16($30) stq $26,0($30) .prologue 1 cpys $f31,$f31,$f31 bsr $26,$foo..ng ldl $4,16($30) lda $3,8($31) addl $31,$4,$1 lda $2,-500($1) beq $2,$L3 cmpeq $1,8,$5 ble $2,$L10 lda $1,-5000($1) cpys $f31,$f31,$f31 lda $3,500($31) beq $1,$L3 $L7: lda $3,17($31) .align 4 $L3: subl $3,$4,$0 ldq $26,0($30) lda $30,32($30) ret $31,($26),1 .align 4 $L10: beq $5,$L7 br $31,$L3 .end bugger .align 2 .align 4 .globl main .ent main main: .frame $30,0,$26,0 .mask 0x4000000,0 ldah $29,0($27) !gpdisp!2 lda $29,0($29) !gpdisp!2 $main..ng: lda $30,-16($30) stq $26,0($30) .prologue 1 bsr $26,$bugger..ng beq $0,$L12 ldq $27,abort($29) !literal!4 jsr $26,($27),abort !lituse_jsr!4 $L12: mov $31,$16 ldq $27,exit($29) !literal!3 jsr $26,($27),exit !lituse_jsr!3 .end main .ident "GCC: (GNU) 3.3.2"