Diagram of example.elf, stopped in main (example.c:5)
| Address | Contents | | decoded |
fp => | [0x7fffffc] | 00 00 80 60 | saved pc | _cstart frame |
| [0x7fffff8] | 00 00 80 0c | saved lr | |
| [0x7fffff4] | 08 00 00 00 | saved sp | |
sp => | [0x7fffff0] | 00 00 00 00 | saved fp | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| [ 0x80ac] | 20 20 00 00 | <_cstart+88> | .word 0x20200000 |
| [ 0x80a8] | 00 00 80 b0 | <_cstart+84> | .word 0x80b0 |
| [ 0x80a4] | 00 00 80 b0 | <_cstart+80> | .word 0x80b0 |
| [ 0x80a0] | e1 2f ff 1e | <_cstart+76> | bx lr |
| [ 0x809c] | e8 9d 68 00 | <_cstart+72> | ldm sp, {fp, sp, lr} |
| [ 0x8098] | e2 4b d0 0c | <_cstart+68> | sub sp, fp, #12, 0 |
| [ 0x8094] | e5 82 30 20 | <_cstart+64> | str r3, [r2, #32] |
| [ 0x8090] | e3 a0 39 02 | <_cstart+60> | mov r3, #32768 |
| [ 0x808c] | e5 82 30 10 | <_cstart+56> | str r3, [r2, #16] |
| [ 0x8088] | e3 83 36 02 | <_cstart+52> | orr r3, r3, #2097152 |
| [ 0x8084] | e3 c3 36 0e | <_cstart+48> | bic r3, r3, #14680064 |
| [ 0x8080] | e5 92 30 10 | <_cstart+44> | ldr r3, [r2, #16] |
| [ 0x807c] | e5 9f 20 28 | <_cstart+40> | ldr r2, [pc, #40] |
| [ 0x8078] | eb ff ff eb | <_cstart+36> | bl 0x802c <main> |
| [ 0x8074] | 3a ff ff fa | <_cstart+32> | bcc 0x8064 <_cstart+16> |
| [ 0x8070] | 34 c3 20 01 | <_cstart+28> | strbcc r2, [r3], #1 |
| [ 0x806c] | 33 a0 20 00 | <_cstart+24> | movcc r2, #0, 0 |
| [ 0x8068] | e1 53 00 02 | <_cstart+20> | cmp r3, r2 |
| [ 0x8064] | e5 9f 20 3c | <_cstart+16> | ldr r2, [pc, #60] |
| [ 0x8060] | e5 9f 30 3c | <_cstart+12> | ldr r3, [pc, #60] |
| [ 0x805c] | e2 4c b0 04 | <_cstart+8> | sub fp, r12, #4, 0 |
| [ 0x8058] | e9 2d d8 00 | <_cstart+4> | push {fp, r12, lr, pc} |
| [ 0x8054] | e1 a0 c0 0d | <_cstart+0> | mov r12, sp |
| [ 0x8050] | e1 2f ff 1e | <main+36> | bx lr |
| [ 0x804c] | e8 9d 68 00 | <main+32> | ldm sp, {fp, sp, lr} |
| [ 0x8048] | e2 4b d0 0c | <main+28> | sub sp, fp, #12, 0 |
| [ 0x8044] | e2 80 00 03 | <main+24> | add r0, r0, #3, 0 |
| [ 0x8040] | eb ff ff f2 | <main+20> | bl 0x8010 <combine> |
| [ 0x803c] | e3 a0 00 05 | <main+16> | mov r0, #5, 0 |
| [ 0x8038] | e3 a0 10 07 | <main+12> | mov r1, #7, 0 |
| [ 0x8034] | e2 4c b0 04 | <main+8> | sub fp, r12, #4, 0 |
| [ 0x8030] | e9 2d d8 00 | <main+4> | push {fp, r12, lr, pc} |
pc => | [ 0x802c] | e1 a0 c0 0d | <main+0> | mov r12, sp |
| [ 0x8028] | e1 2f ff 1e | <combine+24> | bx lr |
| [ 0x8024] | e8 9d 68 00 | <combine+20> | ldm sp, {fp, sp, lr} |
| [ 0x8020] | e2 4b d0 0c | <combine+16> | sub sp, fp, #12, 0 |
| [ 0x801c] | e0 81 00 80 | <combine+12> | add r0, r1, r0, lsl #1 |
| [ 0x8018] | e2 4c b0 04 | <combine+8> | sub fp, r12, #4, 0 |
| [ 0x8014] | e9 2d d8 00 | <combine+4> | push {fp, r12, lr, pc} |
| [ 0x8010] | e1 a0 c0 0d | <combine+0> | mov r12, sp |
| [ 0x800c] | ea ff ff fe | <hang+0> | b 0x800c <hang> |
| [ 0x8008] | eb 00 00 11 | <_start+8> | bl 0x8054 <_cstart> |
| [ 0x8004] | e3 a0 b0 00 | <_start+4> | mov fp, #0, 0 |
| [ 0x8000] | e3 a0 d3 02 | <_start+0> | mov sp, #134217728 |