123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- .text
- .globl _start
- .type _start,@function
- _start:
- ilhu $3,f5@h
- iohl $3,f5@l
- br f1
- .data
- .word f1, f2, f3, f4
- .section ".f1.part1","ax",@progbits
- .globl f1
- .type f1,@function
- f1:
- nop
- stqd $0,16($1)
- ai $1,$1,-64
- stqd $1,0($1)
- brsl $0,f2
- brsl $0,f3
- .fill 800
- br .Lf1.part2
- .size f1,.-f1
- .section ".f1.part2","ax",@progbits
- .Lf1.part2:
- ai $1,$1,64
- lqd $0,16($1)
- bi $0
- .fill 800
- .size .Lf1.part2,.-.Lf1.part2
- .section ".f2.part1","ax",@progbits
- .globl f2
- .type f2,@function
- f2:
- ai $1,$1,-128
- stqd $1,0($1)
- .fill 512
- ai $1,$1,128
- bi $0
- .size f2,.-f2
- .section ".f3.part1","ax",@progbits
- .type f3,@function
- f3:
- .fill 256
- bi $0
- .size f3,.-f3
- .section ".f4.part1","ax",@progbits
- .type f4,@function
- f4:
- stqd $(0),16($1)
- stqd $1,-512($1)
- ai $1,$1,-512
- brasl $0,f2
- .fill 800
- br .Lf4.part2
- .size f4,.-f4
- .section ".f4.part2","ax",@progbits
- .Lf4.part2:
- #alloca
- ilhu $3,-4000@h
- iohl $3,-4000@l
- a $4,$1,$3
- lnop
- ori $1,$4,0
- stqd $4,0($4)
- brsl $0,f5
- #recursion
- brsl $0,f4
- lqd $1,0($1)
- .fill 800
- br .Lf4.part3
- .size .Lf4.part2,.-.Lf4.part2
- .section ".f4.part3","ax",@progbits
- .Lf4.part3:
- #recursion
- brasl $0,f4
- brsl $0,f4
- .fill 800
- br .Lf4.part4
- .size .Lf4.part3,.-.Lf4.part3
- .section ".f4.part4","ax",@progbits
- .Lf4.part4:
- .fill 800
- ila $3,512
- a $1,$1,$3
- lqd $0,16($1)
- #sibling call
- bra f5
- .size .Lf4.part4,.-.Lf4.part4
- .section ".f5.part1","ax",@progbits
- .type f5,@function
- f5:
- stqd $(0),16($1)
- stqd $1,-512($1)
- ai $1,$1,-512
- brsl $0,f5
- .fill 800
- ila $3,512
- a $1,$1,$3
- lqd $0,16($1)
- bi $0
- .size f5,.-f5
|