Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * fibon_recu.asm with "-O2 -fno-inline"
- */
- .align 2
- .global fibonacci
- .type fibonacci, %function
- fibonacci:
- @ args = 0, pretend = 0, frame = 0
- @ frame_needed = 0, uses_anonymous_args = 0
- ldr r3, .L9
- ldr r2, .L9+4
- .LPIC0:
- add r3, pc, r3
- stmfd sp!, {r4, r5, r6, r7, r8, lr}
- ldr r7, [r3, r2]
- mov r6, r0
- ldrd r2, [r7]
- adds r2, r2, #1
- adc r3, r3, #0
- cmp r0, #1
- strd r2, [r7]
- movhi r8, r0
- movhi r4, #0
- movhi r5, #0
- bls .L8
- .L4:
- sub r0, r8, #1
- and r0, r0, #255
- bl fibonacci(PLT)
- ldrd r2, [r7]
- sub r8, r8, #2
- adds r2, r2, #1
- adc r3, r3, #0
- and r8, r8, #255
- strd r2, [r7]
- adds r4, r4, r0
- adc r5, r5, r1
- cmp r8, #1
- bhi .L4
- and r6, r6, #1
- .L5:
- and r0, r6, #255
- adds r0, r0, r4
- mov r1, #0
- adc r1, r1, r5
- ldmfd sp!, {r4, r5, r6, r7, r8, pc}
- .L8:
- mov r4, #0
- mov r5, #0
- b .L5
- .L10:
- .align 2
- .L9:
- .word _GLOBAL_OFFSET_TABLE_-(.LPIC0+8)
- .word calls(GOT)
- .size fibonacci, .-fibonacci
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement