Skip to content

Instantly share code, notes, and snippets.

@kmcallister
Created May 24, 2017 22:38
Show Gist options
  • Select an option

  • Save kmcallister/f03772c461394fa9c739329ded625752 to your computer and use it in GitHub Desktop.

Select an option

Save kmcallister/f03772c461394fa9c739329ded625752 to your computer and use it in GitHub Desktop.
cortex-m issues
$ arm-none-eabi-gdb -x ~/.gdbinit target/thumbv7em-none-eabi/debug/examples/hello -x .gdbinit
GNU gdb (GNU Tools for ARM Embedded Processors) 7.10.1.20151217-cvs
[snip]
Reading symbols from target/thumbv7em-none-eabi/debug/examples/hello...done.
[snip]
0x08000574 in cortex_m::exception::default_handler<cortex_m::exception::BusFault> (_token=...)
at /home/keegan/.cargo/registry/src/github.com-1ecc6299db9ec823/cortex-m-0.2.7/src/exception.rs:176
176 asm!("mrs r0, MSP
semihosting is enabled
Loading section .text, size 0xd78 lma 0x8000000
Start address 0x8000000, load size 3448
Transfer rate: 4 KB/sec, 3448 bytes/write.
Temporary breakpoint 1 at 0x8000672: file /home/keegan/.cargo/registry/src/github.com-1ecc6299db9ec823/cortex-m-rt-0.2.1/src/lib.rs, line 193.
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x0800066c msp: 0x20030000, semihosting
Note: automatically using hardware breakpoints for read-only addresses.
^C
Program received signal SIGINT, Interrupt.
0x08000586 in cortex_m::exception::default_handler<cortex_m::exception::HardFault> (_token=...)
---Type <return> to continue, or q <return> to quit---q
at /home/keegan/.cargo/registry/src/gitQuit
(gdb) cont
Continuing.
^C
Program received signal SIGINT, Interrupt.
0x08000586 in cortex_m::exception::default_handler<cortex_m::exception::HardFault> (_token=...)
at /home/keegan/.cargo/registry/src/github.com-1ecc6299db9ec823/cortex-m-0.2.7/src/exception.rs:176
176 asm!("mrs r0, MSP
$ arm-none-eabi-objdump -dr target/thumbv7em-none-eabi/debug/examples/hello
target/thumbv7em-none-eabi/debug/examples/hello: file format elf32-littlearm
Disassembly of section .text:
08000000 <_VECTOR_TABLE>:
8000000: 20030000 .word 0x20030000
08000004 <_ZN11cortex_m_rt13RESET_HANDLER17h1112bcd5dc58f154E>:
8000004: 0800066d m...
08000008 <_ZN11cortex_m_rt10EXCEPTIONS17hc3f0a047056ad5c6E>:
8000008: 080005a1 08000583 08000579 0800056f ........y...o...
8000018: 080005ab 00000000 00000000 00000000 ................
8000028: 00000000 08000597 00000000 00000000 ................
8000038: 080005b5 0800058d ........
08000040 <_ZN5hello10INTERRUPTS17hd0cd0690df98e50dE>:
8000040: 08000417 08000417 08000417 08000417 ................
8000050: 08000417 08000417 08000417 08000417 ................
8000060: 08000417 08000417 08000417 08000417 ................
8000070: 08000417 08000417 08000417 08000417 ................
8000080: 08000417 08000417 08000417 08000417 ................
8000090: 08000417 08000417 08000417 08000417 ................
80000a0: 08000417 08000417 08000417 08000417 ................
80000b0: 08000417 08000417 08000417 08000417 ................
80000c0: 08000417 08000417 08000417 08000417 ................
80000d0: 08000417 08000417 08000417 08000417 ................
80000e0: 08000417 08000417 08000417 08000417 ................
80000f0: 08000417 08000417 08000417 08000417 ................
8000100: 08000417 08000417 08000417 08000417 ................
8000110: 08000417 08000417 08000417 08000417 ................
8000120: 08000417 08000417 08000417 08000417 ................
8000130: 08000417 08000417 08000417 08000417 ................
8000140: 08000417 08000417 08000417 08000417 ................
8000150: 08000417 08000417 08000417 08000417 ................
8000160: 08000417 08000417 08000417 08000417 ................
8000170: 08000417 08000417 08000417 08000417 ................
8000180: 08000417 08000417 08000417 08000417 ................
8000190: 08000417 08000417 08000417 08000417 ................
80001a0: 08000417 08000417 08000417 08000417 ................
80001b0: 08000417 08000417 08000417 08000417 ................
80001c0: 08000417 08000417 08000417 08000417 ................
80001d0: 08000417 08000417 08000417 08000417 ................
80001e0: 08000417 08000417 08000417 08000417 ................
80001f0: 08000417 08000417 08000417 08000417 ................
8000200: 08000417 08000417 08000417 08000417 ................
8000210: 08000417 08000417 08000417 08000417 ................
8000220: 08000417 08000417 08000417 08000417 ................
8000230: 08000417 08000417 08000417 08000417 ................
8000240: 08000417 08000417 08000417 08000417 ................
8000250: 08000417 08000417 08000417 08000417 ................
8000260: 08000417 08000417 08000417 08000417 ................
8000270: 08000417 08000417 08000417 08000417 ................
8000280: 08000417 08000417 08000417 08000417 ................
8000290: 08000417 08000417 08000417 08000417 ................
80002a0: 08000417 08000417 08000417 08000417 ................
80002b0: 08000417 08000417 08000417 08000417 ................
80002c0: 08000417 08000417 08000417 08000417 ................
80002d0: 08000417 08000417 08000417 08000417 ................
80002e0: 08000417 08000417 08000417 08000417 ................
80002f0: 08000417 08000417 08000417 08000417 ................
8000300: 08000417 08000417 08000417 08000417 ................
8000310: 08000417 08000417 08000417 08000417 ................
8000320: 08000417 08000417 08000417 08000417 ................
8000330: 08000417 08000417 08000417 08000417 ................
8000340: 08000417 08000417 08000417 08000417 ................
8000350: 08000417 08000417 08000417 08000417 ................
8000360: 08000417 08000417 08000417 08000417 ................
8000370: 08000417 08000417 08000417 08000417 ................
8000380: 08000417 08000417 08000417 08000417 ................
8000390: 08000417 08000417 08000417 08000417 ................
80003a0: 08000417 08000417 08000417 08000417 ................
80003b0: 08000417 08000417 08000417 08000417 ................
80003c0: 08000417 08000417 08000417 08000417 ................
80003d0: 08000417 08000417 08000417 08000417 ................
80003e0: 08000417 08000417 08000417 08000417 ................
80003f0: 08000417 08000417 08000417 08000417 ................
08000400 <_ZN5hello4main17hfc0066d180fdd903E>:
8000400: b580 push {r7, lr}
8000402: 466f mov r7, sp
8000404: f640 3030 movw r0, #2864 ; 0xb30
8000408: f6c0 0000 movt r0, #2048 ; 0x800
800040c: 210e movs r1, #14
800040e: f000 fb2d bl 8000a6c <_ZN20cortex_m_semihosting2io9write_str17h30d3451d491d8e31E>
8000412: e7ff b.n 8000414 <_ZN5hello4main17hfc0066d180fdd903E+0x14>
8000414: bd80 pop {r7, pc}
08000416 <_ZN5hello15default_handler17he0ae7c07566fb868E>:
8000416: be00 bkpt 0x0000
8000418: e7ff b.n 800041a <_ZN5hello15default_handler17he0ae7c07566fb868E+0x4>
800041a: 4770 bx lr
0800041c <main>:
800041c: b5d0 push {r4, r6, r7, lr}
800041e: af02 add r7, sp, #8
8000420: b086 sub sp, #24
8000422: 460a mov r2, r1
8000424: 4603 mov r3, r0
8000426: f240 0c00 movw ip, #0
800042a: f2c0 0c00 movt ip, #0
800042e: f89c c000 ldrb.w ip, [ip]
8000432: f240 4e01 movw lr, #1025 ; 0x401
8000436: f6c0 0e00 movt lr, #2048 ; 0x800
800043a: 9005 str r0, [sp, #20]
800043c: 4670 mov r0, lr
800043e: f8dd e014 ldr.w lr, [sp, #20]
8000442: 9104 str r1, [sp, #16]
8000444: 4671 mov r1, lr
8000446: 9c04 ldr r4, [sp, #16]
8000448: 9203 str r2, [sp, #12]
800044a: 4622 mov r2, r4
800044c: f8cd c008 str.w ip, [sp, #8]
8000450: 9301 str r3, [sp, #4]
8000452: f000 f8f1 bl 8000638 <_ZN11cortex_m_rt10lang_items5start17hd2a4d56ba7461a8dE>
8000456: b006 add sp, #24
8000458: bdd0 pop {r4, r6, r7, pc}
0800045a <_ZN2r08zero_bss17h0fa39a84dcbea670E>:
800045a: b580 push {r7, lr}
800045c: 466f mov r7, sp
800045e: b08a sub sp, #40 ; 0x28
8000460: 460a mov r2, r1
8000462: 4603 mov r3, r0
8000464: 9005 str r0, [sp, #20]
8000466: 9106 str r1, [sp, #24]
8000468: 9805 ldr r0, [sp, #20]
800046a: 9007 str r0, [sp, #28]
800046c: 9806 ldr r0, [sp, #24]
800046e: 9008 str r0, [sp, #32]
8000470: 9808 ldr r0, [sp, #32]
8000472: 9907 ldr r1, [sp, #28]
8000474: f04f 0c01 mov.w ip, #1
8000478: 4288 cmp r0, r1
800047a: bf28 it cs
800047c: f04f 0c00 movcs.w ip, #0
8000480: eba0 0001 sub.w r0, r0, r1
8000484: f1bc 0f00 cmp.w ip, #0
8000488: 9204 str r2, [sp, #16]
800048a: 9303 str r3, [sp, #12]
800048c: 9002 str r0, [sp, #8]
800048e: d115 bne.n 80004bc <_ZN2r08zero_bss17h0fa39a84dcbea670E+0x62>
8000490: e7ff b.n 8000492 <_ZN2r08zero_bss17h0fa39a84dcbea670E+0x38>
8000492: f000 f861 bl 8000558 <_ZN4core3mem7size_of17h3a784c01cf4b550cE>
8000496: 9001 str r0, [sp, #4]
8000498: e7ff b.n 800049a <_ZN2r08zero_bss17h0fa39a84dcbea670E+0x40>
800049a: 9801 ldr r0, [sp, #4]
800049c: 2800 cmp r0, #0
800049e: d013 beq.n 80004c8 <_ZN2r08zero_bss17h0fa39a84dcbea670E+0x6e>
80004a0: e7ff b.n 80004a2 <_ZN2r08zero_bss17h0fa39a84dcbea670E+0x48>
80004a2: 9802 ldr r0, [sp, #8]
80004a4: 9901 ldr r1, [sp, #4]
80004a6: fbb0 f2f1 udiv r2, r0, r1
80004aa: 9209 str r2, [sp, #36] ; 0x24
80004ac: 9807 ldr r0, [sp, #28]
80004ae: 9a09 ldr r2, [sp, #36] ; 0x24
80004b0: 0091 lsls r1, r2, #2
80004b2: f000 fb34 bl 8000b1e <__aeabi_memclr4>
80004b6: e7ff b.n 80004b8 <_ZN2r08zero_bss17h0fa39a84dcbea670E+0x5e>
80004b8: b00a add sp, #40 ; 0x28
80004ba: bd80 pop {r7, pc}
80004bc: f640 30b4 movw r0, #2996 ; 0xbb4
80004c0: f6c0 0000 movt r0, #2048 ; 0x800
80004c4: f000 faee bl 8000aa4 <_ZN4core9panicking5panic17hece962016015abc5E>
80004c8: f640 30ec movw r0, #3052 ; 0xbec
80004cc: f6c0 0000 movt r0, #2048 ; 0x800
80004d0: f000 fae8 bl 8000aa4 <_ZN4core9panicking5panic17hece962016015abc5E>
080004d4 <_ZN2r09init_data17h8c4173bc367801ddE>:
80004d4: b580 push {r7, lr}
80004d6: 466f mov r7, sp
80004d8: b08c sub sp, #48 ; 0x30
80004da: 4613 mov r3, r2
80004dc: 468c mov ip, r1
80004de: 4686 mov lr, r0
80004e0: 9005 str r0, [sp, #20]
80004e2: 9106 str r1, [sp, #24]
80004e4: 9207 str r2, [sp, #28]
80004e6: 9805 ldr r0, [sp, #20]
80004e8: 9008 str r0, [sp, #32]
80004ea: 9806 ldr r0, [sp, #24]
80004ec: 9009 str r0, [sp, #36] ; 0x24
80004ee: 9807 ldr r0, [sp, #28]
80004f0: 900a str r0, [sp, #40] ; 0x28
80004f2: 9809 ldr r0, [sp, #36] ; 0x24
80004f4: 9908 ldr r1, [sp, #32]
80004f6: 2201 movs r2, #1
80004f8: 4288 cmp r0, r1
80004fa: bf28 it cs
80004fc: 2200 movcs r2, #0
80004fe: eba0 0001 sub.w r0, r0, r1
8000502: 2a00 cmp r2, #0
8000504: 9304 str r3, [sp, #16]
8000506: f8cd c00c str.w ip, [sp, #12]
800050a: f8cd e008 str.w lr, [sp, #8]
800050e: 9001 str r0, [sp, #4]
8000510: d116 bne.n 8000540 <_ZN2r09init_data17h8c4173bc367801ddE+0x6c>
8000512: e7ff b.n 8000514 <_ZN2r09init_data17h8c4173bc367801ddE+0x40>
8000514: f000 f820 bl 8000558 <_ZN4core3mem7size_of17h3a784c01cf4b550cE>
8000518: 9000 str r0, [sp, #0]
800051a: e7ff b.n 800051c <_ZN2r09init_data17h8c4173bc367801ddE+0x48>
800051c: 9800 ldr r0, [sp, #0]
800051e: 2800 cmp r0, #0
8000520: d014 beq.n 800054c <_ZN2r09init_data17h8c4173bc367801ddE+0x78>
8000522: e7ff b.n 8000524 <_ZN2r09init_data17h8c4173bc367801ddE+0x50>
8000524: 9801 ldr r0, [sp, #4]
8000526: 9900 ldr r1, [sp, #0]
8000528: fbb0 f2f1 udiv r2, r0, r1
800052c: 920b str r2, [sp, #44] ; 0x2c
800052e: 990a ldr r1, [sp, #40] ; 0x28
8000530: 9808 ldr r0, [sp, #32]
8000532: 9a0b ldr r2, [sp, #44] ; 0x2c
8000534: 0092 lsls r2, r2, #2
8000536: f000 fae8 bl 8000b0a <__aeabi_memcpy4>
800053a: e7ff b.n 800053c <_ZN2r09init_data17h8c4173bc367801ddE+0x68>
800053c: b00c add sp, #48 ; 0x30
800053e: bd80 pop {r7, pc}
8000540: f640 4000 movw r0, #3072 ; 0xc00
8000544: f6c0 0000 movt r0, #2048 ; 0x800
8000548: f000 faac bl 8000aa4 <_ZN4core9panicking5panic17hece962016015abc5E>
800054c: f640 4014 movw r0, #3092 ; 0xc14
8000550: f6c0 0000 movt r0, #2048 ; 0x800
8000554: f000 faa6 bl 8000aa4 <_ZN4core9panicking5panic17hece962016015abc5E>
08000558 <_ZN4core3mem7size_of17h3a784c01cf4b550cE>:
8000558: b082 sub sp, #8
800055a: 2004 movs r0, #4
800055c: 9001 str r0, [sp, #4]
800055e: 9801 ldr r0, [sp, #4]
8000560: 9000 str r0, [sp, #0]
8000562: e7ff b.n 8000564 <_ZN4core3mem7size_of17h3a784c01cf4b550cE+0xc>
8000564: 9800 ldr r0, [sp, #0]
8000566: b002 add sp, #8
8000568: 4770 bx lr
0800056a <_ZN4core3ptr4null17hac838b57c78657c1E>:
800056a: 2000 movs r0, #0
800056c: 4770 bx lr
0800056e <_ZN8cortex_m9exception15default_handler17h16dd86ae6943471cE>:
800056e: f3ef 8008 mrs r0, MSP
8000572: 6941 ldr r1, [r0, #20]
8000574: f000 b934 b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
08000578 <_ZN8cortex_m9exception15default_handler17h37fd7289921058b7E>:
8000578: f3ef 8008 mrs r0, MSP
800057c: 6941 ldr r1, [r0, #20]
800057e: f000 b92f b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
08000582 <_ZN8cortex_m9exception15default_handler17h3c484a766804adbeE>:
8000582: f3ef 8008 mrs r0, MSP
8000586: 6941 ldr r1, [r0, #20]
8000588: f000 b92a b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
0800058c <_ZN8cortex_m9exception15default_handler17h4154e7c6d12743d2E>:
800058c: f3ef 8008 mrs r0, MSP
8000590: 6941 ldr r1, [r0, #20]
8000592: f000 b925 b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
08000596 <_ZN8cortex_m9exception15default_handler17h9e52d7ace845d371E>:
8000596: f3ef 8008 mrs r0, MSP
800059a: 6941 ldr r1, [r0, #20]
800059c: f000 b920 b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
080005a0 <_ZN8cortex_m9exception15default_handler17ha794aadac7442516E>:
80005a0: f3ef 8008 mrs r0, MSP
80005a4: 6941 ldr r1, [r0, #20]
80005a6: f000 b91b b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
080005aa <_ZN8cortex_m9exception15default_handler17hd1f300a8c8100befE>:
80005aa: f3ef 8008 mrs r0, MSP
80005ae: 6941 ldr r1, [r0, #20]
80005b0: f000 b916 b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
080005b4 <_ZN8cortex_m9exception15default_handler17hf3ebb943107c7a05E>:
80005b4: f3ef 8008 mrs r0, MSP
80005b8: 6941 ldr r1, [r0, #20]
80005ba: f000 b911 b.w 80007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>
080005be <rust_begin_unwind>:
80005be: b5f0 push {r4, r5, r6, r7, lr}
80005c0: af03 add r7, sp, #12
80005c2: e92d 0f00 stmdb sp!, {r8, r9, sl, fp}
80005c6: b09d sub sp, #116 ; 0x74
80005c8: f8d7 c00c ldr.w ip, [r7, #12]
80005cc: f8d7 e008 ldr.w lr, [r7, #8]
80005d0: 461c mov r4, r3
80005d2: 4615 mov r5, r2
80005d4: 460e mov r6, r1
80005d6: 4680 mov r8, r0
80005d8: f8d7 9018 ldr.w r9, [r7, #24]
80005dc: f8d7 a014 ldr.w sl, [r7, #20]
80005e0: f8d7 b010 ldr.w fp, [r7, #16]
80005e4: f8cd c040 str.w ip, [sp, #64] ; 0x40
80005e8: f8cd e03c str.w lr, [sp, #60] ; 0x3c
80005ec: 930e str r3, [sp, #56] ; 0x38
80005ee: 920d str r2, [sp, #52] ; 0x34
80005f0: 910c str r1, [sp, #48] ; 0x30
80005f2: 900b str r0, [sp, #44] ; 0x2c
80005f4: a80b add r0, sp, #44 ; 0x2c
80005f6: a905 add r1, sp, #20
80005f8: 460a mov r2, r1
80005fa: 9104 str r1, [sp, #16]
80005fc: 9403 str r4, [sp, #12]
80005fe: 9502 str r5, [sp, #8]
8000600: e890 503a ldmia.w r0, {r1, r3, r4, r5, ip, lr}
8000604: e882 503a stmia.w r2, {r1, r3, r4, r5, ip, lr}
8000608: f8cd b044 str.w fp, [sp, #68] ; 0x44
800060c: f8cd a048 str.w sl, [sp, #72] ; 0x48
8000610: f8cd 904c str.w r9, [sp, #76] ; 0x4c
8000614: a814 add r0, sp, #80 ; 0x50
8000616: 9904 ldr r1, [sp, #16]
8000618: e891 503c ldmia.w r1, {r2, r3, r4, r5, ip, lr}
800061c: e880 503c stmia.w r0, {r2, r3, r4, r5, ip, lr}
8000620: 9811 ldr r0, [sp, #68] ; 0x44
8000622: 9912 ldr r1, [sp, #72] ; 0x48
8000624: 901a str r0, [sp, #104] ; 0x68
8000626: 911b str r1, [sp, #108] ; 0x6c
8000628: 9813 ldr r0, [sp, #76] ; 0x4c
800062a: 901c str r0, [sp, #112] ; 0x70
800062c: be00 bkpt 0x0000
800062e: 9601 str r6, [sp, #4]
8000630: f8cd 8000 str.w r8, [sp]
8000634: e7ff b.n 8000636 <rust_begin_unwind+0x78>
8000636: e7fe b.n 8000636 <rust_begin_unwind+0x78>
08000638 <_ZN11cortex_m_rt10lang_items5start17hd2a4d56ba7461a8dE>:
8000638: b580 push {r7, lr}
800063a: 466f mov r7, sp
800063c: b08a sub sp, #40 ; 0x28
800063e: 4613 mov r3, r2
8000640: 468c mov ip, r1
8000642: 4686 mov lr, r0
8000644: 9004 str r0, [sp, #16]
8000646: 9105 str r1, [sp, #20]
8000648: 9206 str r2, [sp, #24]
800064a: 9804 ldr r0, [sp, #16]
800064c: 9007 str r0, [sp, #28]
800064e: 9805 ldr r0, [sp, #20]
8000650: 9008 str r0, [sp, #32]
8000652: 9806 ldr r0, [sp, #24]
8000654: 9009 str r0, [sp, #36] ; 0x24
8000656: 9807 ldr r0, [sp, #28]
8000658: 9303 str r3, [sp, #12]
800065a: f8cd c008 str.w ip, [sp, #8]
800065e: f8cd e004 str.w lr, [sp, #4]
8000662: 4780 blx r0
8000664: e7ff b.n 8000666 <_ZN11cortex_m_rt10lang_items5start17hd2a4d56ba7461a8dE+0x2e>
8000666: 2000 movs r0, #0
8000668: b00a add sp, #40 ; 0x28
800066a: bd80 pop {r7, pc}
0800066c <_ZN11cortex_m_rt13reset_handler17hf9506641e67d8f57E>:
800066c: b580 push {r7, lr}
800066e: 466f mov r7, sp
8000670: b082 sub sp, #8
8000672: f240 0000 movw r0, #0
8000676: f2c2 0000 movt r0, #8192 ; 0x2000
800067a: f240 0100 movw r1, #0
800067e: f2c2 0100 movt r1, #8192 ; 0x2000
8000682: f7ff feea bl 800045a <_ZN2r08zero_bss17h0fa39a84dcbea670E>
8000686: e7ff b.n 8000688 <_ZN11cortex_m_rt13reset_handler17hf9506641e67d8f57E+0x1c>
8000688: f240 0000 movw r0, #0
800068c: f2c2 0000 movt r0, #8192 ; 0x2000
8000690: f240 0100 movw r1, #0
8000694: f2c2 0100 movt r1, #8192 ; 0x2000
8000698: f640 5278 movw r2, #3448 ; 0xd78
800069c: f6c0 0200 movt r2, #2048 ; 0x800
80006a0: f7ff ff18 bl 80004d4 <_ZN2r09init_data17h8c4173bc367801ddE>
80006a4: e7ff b.n 80006a6 <_ZN11cortex_m_rt13reset_handler17hf9506641e67d8f57E+0x3a>
80006a6: f7ff ff60 bl 800056a <_ZN4core3ptr4null17hac838b57c78657c1E>
80006aa: 9001 str r0, [sp, #4]
80006ac: e7ff b.n 80006ae <_ZN11cortex_m_rt13reset_handler17hf9506641e67d8f57E+0x42>
80006ae: 2000 movs r0, #0
80006b0: 9901 ldr r1, [sp, #4]
80006b2: f7ff feb3 bl 800041c <main>
80006b6: 9000 str r0, [sp, #0]
80006b8: e7ff b.n 80006ba <_ZN11cortex_m_rt13reset_handler17hf9506641e67d8f57E+0x4e>
80006ba: e7ff b.n 80006bc <_ZN11cortex_m_rt13reset_handler17hf9506641e67d8f57E+0x50>
80006bc: bf30 wfi
80006be: e7fd b.n 80006bc <_ZN11cortex_m_rt13reset_handler17hf9506641e67d8f57E+0x50>
080006c0 <_ZN40_$LT$core..cell..UnsafeCell$LT$T$GT$$GT$3get17h323a7f6f7eb45a73E>:
80006c0: b083 sub sp, #12
80006c2: 4601 mov r1, r0
80006c4: 9001 str r0, [sp, #4]
80006c6: 9801 ldr r0, [sp, #4]
80006c8: 9002 str r0, [sp, #8]
80006ca: 9802 ldr r0, [sp, #8]
80006cc: 9100 str r1, [sp, #0]
80006ce: b003 add sp, #12
80006d0: 4770 bx lr
080006d2 <_ZN4core3ptr13read_volatile17hceab0b64d0bd47a4E>:
80006d2: b085 sub sp, #20
80006d4: 4601 mov r1, r0
80006d6: 9002 str r0, [sp, #8]
80006d8: 9802 ldr r0, [sp, #8]
80006da: 9003 str r0, [sp, #12]
80006dc: 9803 ldr r0, [sp, #12]
80006de: 6800 ldr r0, [r0, #0]
80006e0: 9004 str r0, [sp, #16]
80006e2: 9804 ldr r0, [sp, #16]
80006e4: 9101 str r1, [sp, #4]
80006e6: 9000 str r0, [sp, #0]
80006e8: e7ff b.n 80006ea <_ZN4core3ptr13read_volatile17hceab0b64d0bd47a4E+0x18>
80006ea: 9800 ldr r0, [sp, #0]
80006ec: b005 add sp, #20
80006ee: 4770 bx lr
080006f0 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE>:
80006f0: b580 push {r7, lr}
80006f2: 466f mov r7, sp
80006f4: b08a sub sp, #40 ; 0x28
80006f6: f640 402c movw r0, #3116 ; 0xc2c
80006fa: f6c0 0000 movt r0, #2048 ; 0x800
80006fe: 6800 ldr r0, [r0, #0]
8000700: f000 f882 bl 8000808 <_ZN50_$LT$cortex_m..peripheral..Peripheral$LT$T$GT$$GT$3get17h9d56feb56bd34ea5E>
8000704: 9004 str r0, [sp, #16]
8000706: e7ff b.n 8000708 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0x18>
8000708: 9804 ldr r0, [sp, #16]
800070a: 9006 str r0, [sp, #24]
800070c: 9906 ldr r1, [sp, #24]
800070e: 9107 str r1, [sp, #28]
8000710: 9907 ldr r1, [sp, #28]
8000712: 9108 str r1, [sp, #32]
8000714: 9908 ldr r1, [sp, #32]
8000716: 9109 str r1, [sp, #36] ; 0x24
8000718: 9809 ldr r0, [sp, #36] ; 0x24
800071a: f7ff ffd1 bl 80006c0 <_ZN40_$LT$core..cell..UnsafeCell$LT$T$GT$$GT$3get17h323a7f6f7eb45a73E>
800071e: f7ff ffd8 bl 80006d2 <_ZN4core3ptr13read_volatile17hceab0b64d0bd47a4E>
8000722: 9003 str r0, [sp, #12]
8000724: e7ff b.n 8000726 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0x36>
8000726: 9803 ldr r0, [sp, #12]
8000728: 9903 ldr r1, [sp, #12]
800072a: b2ca uxtb r2, r1
800072c: 4613 mov r3, r2
800072e: 2a0f cmp r2, #15
8000730: 9002 str r0, [sp, #8]
8000732: 9301 str r3, [sp, #4]
8000734: d83b bhi.n 80007ae <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xbe>
8000736: 9901 ldr r1, [sp, #4]
8000738: e8df f001 tbb [pc, r1]
800073c: 100c3908 .word 0x100c3908
8000740: 391c1814 .word 0x391c1814
8000744: 20393939 .word 0x20393939
8000748: 28243939 .word 0x28243939
800074c: 2000 movs r0, #0
800074e: f88d 0014 strb.w r0, [sp, #20]
8000752: e034 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
8000754: 2001 movs r0, #1
8000756: f88d 0014 strb.w r0, [sp, #20]
800075a: e030 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
800075c: 2002 movs r0, #2
800075e: f88d 0014 strb.w r0, [sp, #20]
8000762: e02c b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
8000764: 2003 movs r0, #3
8000766: f88d 0014 strb.w r0, [sp, #20]
800076a: e028 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
800076c: 2004 movs r0, #4
800076e: f88d 0014 strb.w r0, [sp, #20]
8000772: e024 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
8000774: 2005 movs r0, #5
8000776: f88d 0014 strb.w r0, [sp, #20]
800077a: e020 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
800077c: 2006 movs r0, #6
800077e: f88d 0014 strb.w r0, [sp, #20]
8000782: e01c b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
8000784: 2007 movs r0, #7
8000786: f88d 0014 strb.w r0, [sp, #20]
800078a: e018 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
800078c: 2008 movs r0, #8
800078e: f88d 0014 strb.w r0, [sp, #20]
8000792: e014 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
8000794: f817 0c11 ldrb.w r0, [r7, #-17]
8000798: 3810 subs r0, #16
800079a: b2c1 uxtb r1, r0
800079c: 4602 mov r2, r0
800079e: 4281 cmp r1, r0
80007a0: 9200 str r2, [sp, #0]
80007a2: d117 bne.n 80007d4 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xe4>
80007a4: e00f b.n 80007c6 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xd6>
80007a6: 200a movs r0, #10
80007a8: f88d 0014 strb.w r0, [sp, #20]
80007ac: e007 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
80007ae: 9802 ldr r0, [sp, #8]
80007b0: f807 0c11 strb.w r0, [r7, #-17]
80007b4: f817 1c11 ldrb.w r1, [r7, #-17]
80007b8: 290f cmp r1, #15
80007ba: d8eb bhi.n 8000794 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xa4>
80007bc: e7f3 b.n 80007a6 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xb6>
80007be: f8bd 0014 ldrh.w r0, [sp, #20]
80007c2: b00a add sp, #40 ; 0x28
80007c4: bd80 pop {r7, pc}
80007c6: 2009 movs r0, #9
80007c8: f88d 0014 strb.w r0, [sp, #20]
80007cc: 9800 ldr r0, [sp, #0]
80007ce: f88d 0015 strb.w r0, [sp, #21]
80007d2: e7f4 b.n 80007be <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE+0xce>
80007d4: f640 40b4 movw r0, #3252 ; 0xcb4
80007d8: f6c0 0000 movt r0, #2048 ; 0x800
80007dc: f000 f962 bl 8000aa4 <_ZN4core9panicking5panic17hece962016015abc5E>
080007e0 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E>:
80007e0: b580 push {r7, lr}
80007e2: 466f mov r7, sp
80007e4: b084 sub sp, #16
80007e6: 4601 mov r1, r0
80007e8: 9001 str r0, [sp, #4]
80007ea: 9801 ldr r0, [sp, #4]
80007ec: 9002 str r0, [sp, #8]
80007ee: 9100 str r1, [sp, #0]
80007f0: f7ff ff7e bl 80006f0 <_ZN8cortex_m9exception9Exception7current17h62ee5c7f497eca3aE>
80007f4: f827 0c02 strh.w r0, [r7, #-2]
80007f8: f837 0c02 ldrh.w r0, [r7, #-2]
80007fc: f8ad 000c strh.w r0, [sp, #12]
8000800: e7ff b.n 8000802 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E+0x22>
8000802: be00 bkpt 0x0000
8000804: e7ff b.n 8000806 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E+0x26>
8000806: e7fe b.n 8000806 <_ZN8cortex_m9exception15default_handler7handler17h89eb8a43d7a35ad6E+0x26>
08000808 <_ZN50_$LT$cortex_m..peripheral..Peripheral$LT$T$GT$$GT$3get17h9d56feb56bd34ea5E>:
8000808: b083 sub sp, #12
800080a: 4601 mov r1, r0
800080c: 9001 str r0, [sp, #4]
800080e: 9801 ldr r0, [sp, #4]
8000810: 9002 str r0, [sp, #8]
8000812: 9802 ldr r0, [sp, #8]
8000814: 6800 ldr r0, [r0, #0]
8000816: 9100 str r1, [sp, #0]
8000818: b003 add sp, #12
800081a: 4770 bx lr
0800081c <_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8as_bytes17he103ffebaf423df3E>:
800081c: b08a sub sp, #40 ; 0x28
800081e: 460a mov r2, r1
8000820: 4603 mov r3, r0
8000822: 9004 str r0, [sp, #16]
8000824: 9105 str r1, [sp, #20]
8000826: 9804 ldr r0, [sp, #16]
8000828: 9905 ldr r1, [sp, #20]
800082a: 9006 str r0, [sp, #24]
800082c: 9107 str r1, [sp, #28]
800082e: 9806 ldr r0, [sp, #24]
8000830: 9907 ldr r1, [sp, #28]
8000832: 9008 str r0, [sp, #32]
8000834: 9109 str r1, [sp, #36] ; 0x24
8000836: 9808 ldr r0, [sp, #32]
8000838: 9909 ldr r1, [sp, #36] ; 0x24
800083a: 9203 str r2, [sp, #12]
800083c: 9302 str r3, [sp, #8]
800083e: 9001 str r0, [sp, #4]
8000840: 9100 str r1, [sp, #0]
8000842: e7ff b.n 8000844 <_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8as_bytes17he103ffebaf423df3E+0x28>
8000844: 9801 ldr r0, [sp, #4]
8000846: 9900 ldr r1, [sp, #0]
8000848: b00a add sp, #40 ; 0x28
800084a: 4770 bx lr
0800084c <_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h71168e86fc4aaef7E>:
800084c: b088 sub sp, #32
800084e: 460a mov r2, r1
8000850: 4603 mov r3, r0
8000852: 9003 str r0, [sp, #12]
8000854: 9104 str r1, [sp, #16]
8000856: 9803 ldr r0, [sp, #12]
8000858: 9005 str r0, [sp, #20]
800085a: 9804 ldr r0, [sp, #16]
800085c: 9006 str r0, [sp, #24]
800085e: 9805 ldr r0, [sp, #20]
8000860: 9906 ldr r1, [sp, #24]
8000862: 4408 add r0, r1
8000864: 9007 str r0, [sp, #28]
8000866: 9807 ldr r0, [sp, #28]
8000868: 9202 str r2, [sp, #8]
800086a: 9301 str r3, [sp, #4]
800086c: 9000 str r0, [sp, #0]
800086e: e7ff b.n 8000870 <_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h71168e86fc4aaef7E+0x24>
8000870: 9800 ldr r0, [sp, #0]
8000872: b008 add sp, #32
8000874: 4770 bx lr
08000876 <_ZN4core5slice14from_raw_parts17h076aeb6c15c57f38E>:
8000876: b08c sub sp, #48 ; 0x30
8000878: 460a mov r2, r1
800087a: 4603 mov r3, r0
800087c: 9004 str r0, [sp, #16]
800087e: 9105 str r1, [sp, #20]
8000880: 9804 ldr r0, [sp, #16]
8000882: 9006 str r0, [sp, #24]
8000884: 9805 ldr r0, [sp, #20]
8000886: 9007 str r0, [sp, #28]
8000888: 9806 ldr r0, [sp, #24]
800088a: 9907 ldr r1, [sp, #28]
800088c: 9008 str r0, [sp, #32]
800088e: 9109 str r1, [sp, #36] ; 0x24
8000890: 9808 ldr r0, [sp, #32]
8000892: 9909 ldr r1, [sp, #36] ; 0x24
8000894: 900a str r0, [sp, #40] ; 0x28
8000896: 910b str r1, [sp, #44] ; 0x2c
8000898: 980a ldr r0, [sp, #40] ; 0x28
800089a: 990b ldr r1, [sp, #44] ; 0x2c
800089c: 9203 str r2, [sp, #12]
800089e: 9302 str r3, [sp, #8]
80008a0: 9001 str r0, [sp, #4]
80008a2: 9100 str r1, [sp, #0]
80008a4: e7ff b.n 80008a6 <_ZN4core5slice14from_raw_parts17h076aeb6c15c57f38E+0x30>
80008a6: 9801 ldr r0, [sp, #4]
80008a8: 9900 ldr r1, [sp, #0]
80008aa: b00c add sp, #48 ; 0x30
80008ac: 4770 bx lr
080008ae <_ZN4core5slice8SliceExt8is_empty17hf8c6c36ecaca07a6E>:
80008ae: b580 push {r7, lr}
80008b0: 466f mov r7, sp
80008b2: b088 sub sp, #32
80008b4: 460a mov r2, r1
80008b6: 4603 mov r3, r0
80008b8: 9004 str r0, [sp, #16]
80008ba: 9105 str r1, [sp, #20]
80008bc: 9804 ldr r0, [sp, #16]
80008be: 9905 ldr r1, [sp, #20]
80008c0: 9006 str r0, [sp, #24]
80008c2: 9107 str r1, [sp, #28]
80008c4: 9806 ldr r0, [sp, #24]
80008c6: 9907 ldr r1, [sp, #28]
80008c8: 9203 str r2, [sp, #12]
80008ca: 9302 str r3, [sp, #8]
80008cc: f000 f809 bl 80008e2 <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17heab653f12bf80925E>
80008d0: 9001 str r0, [sp, #4]
80008d2: e7ff b.n 80008d4 <_ZN4core5slice8SliceExt8is_empty17hf8c6c36ecaca07a6E+0x26>
80008d4: 2000 movs r0, #0
80008d6: 9901 ldr r1, [sp, #4]
80008d8: 2900 cmp r1, #0
80008da: bf08 it eq
80008dc: 2001 moveq r0, #1
80008de: b008 add sp, #32
80008e0: bd80 pop {r7, pc}
080008e2 <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17heab653f12bf80925E>:
80008e2: b089 sub sp, #36 ; 0x24
80008e4: 460a mov r2, r1
80008e6: 4603 mov r3, r0
80008e8: 9003 str r0, [sp, #12]
80008ea: 9104 str r1, [sp, #16]
80008ec: 9803 ldr r0, [sp, #12]
80008ee: 9904 ldr r1, [sp, #16]
80008f0: 9005 str r0, [sp, #20]
80008f2: 9106 str r1, [sp, #24]
80008f4: 9805 ldr r0, [sp, #20]
80008f6: 9906 ldr r1, [sp, #24]
80008f8: 9007 str r0, [sp, #28]
80008fa: 9108 str r1, [sp, #32]
80008fc: 9808 ldr r0, [sp, #32]
80008fe: 9202 str r2, [sp, #8]
8000900: 9301 str r3, [sp, #4]
8000902: 9000 str r0, [sp, #0]
8000904: e7ff b.n 8000906 <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17heab653f12bf80925E+0x24>
8000906: 9800 ldr r0, [sp, #0]
8000908: b009 add sp, #36 ; 0x24
800090a: 4770 bx lr
0800090c <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$6as_ptr17h7606bff54aa081d5E>:
800090c: b086 sub sp, #24
800090e: 460a mov r2, r1
8000910: 4603 mov r3, r0
8000912: 9002 str r0, [sp, #8]
8000914: 9103 str r1, [sp, #12]
8000916: 9802 ldr r0, [sp, #8]
8000918: 9903 ldr r1, [sp, #12]
800091a: 9004 str r0, [sp, #16]
800091c: 9105 str r1, [sp, #20]
800091e: 9804 ldr r0, [sp, #16]
8000920: 9201 str r2, [sp, #4]
8000922: 9300 str r3, [sp, #0]
8000924: b006 add sp, #24
8000926: 4770 bx lr
08000928 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E>:
8000928: b580 push {r7, lr}
800092a: 466f mov r7, sp
800092c: b0a0 sub sp, #128 ; 0x80
800092e: 4613 mov r3, r2
8000930: 468c mov ip, r1
8000932: 4686 mov lr, r0
8000934: 9010 str r0, [sp, #64] ; 0x40
8000936: 9111 str r1, [sp, #68] ; 0x44
8000938: 9212 str r2, [sp, #72] ; 0x48
800093a: 9810 ldr r0, [sp, #64] ; 0x40
800093c: 9014 str r0, [sp, #80] ; 0x50
800093e: 9811 ldr r0, [sp, #68] ; 0x44
8000940: 9912 ldr r1, [sp, #72] ; 0x48
8000942: 9015 str r0, [sp, #84] ; 0x54
8000944: 9116 str r1, [sp, #88] ; 0x58
8000946: 930f str r3, [sp, #60] ; 0x3c
8000948: f8cd c038 str.w ip, [sp, #56] ; 0x38
800094c: f8cd e034 str.w lr, [sp, #52] ; 0x34
8000950: e7ff b.n 8000952 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x2a>
8000952: 9815 ldr r0, [sp, #84] ; 0x54
8000954: 9916 ldr r1, [sp, #88] ; 0x58
8000956: f7ff ffaa bl 80008ae <_ZN4core5slice8SliceExt8is_empty17hf8c6c36ecaca07a6E>
800095a: 900c str r0, [sp, #48] ; 0x30
800095c: e000 b.n 8000960 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x38>
800095e: e03b b.n 80009d8 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xb0>
8000960: 980c ldr r0, [sp, #48] ; 0x30
8000962: 43c1 mvns r1, r0
8000964: 07c9 lsls r1, r1, #31
8000966: 2900 cmp r1, #0
8000968: d0f9 beq.n 800095e <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x36>
800096a: e7ff b.n 800096c <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x44>
800096c: 9814 ldr r0, [sp, #80] ; 0x50
800096e: 9915 ldr r1, [sp, #84] ; 0x54
8000970: 9a16 ldr r2, [sp, #88] ; 0x58
8000972: 900b str r0, [sp, #44] ; 0x2c
8000974: 4608 mov r0, r1
8000976: 4611 mov r1, r2
8000978: f7ff ffc8 bl 800090c <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$6as_ptr17h7606bff54aa081d5E>
800097c: 900a str r0, [sp, #40] ; 0x28
800097e: e7ff b.n 8000980 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x58>
8000980: 980a ldr r0, [sp, #40] ; 0x28
8000982: 9915 ldr r1, [sp, #84] ; 0x54
8000984: 9a16 ldr r2, [sp, #88] ; 0x58
8000986: 9009 str r0, [sp, #36] ; 0x24
8000988: 4608 mov r0, r1
800098a: 4611 mov r1, r2
800098c: f7ff ffa9 bl 80008e2 <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17heab653f12bf80925E>
8000990: 9008 str r0, [sp, #32]
8000992: e7ff b.n 8000994 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x6c>
8000994: 980b ldr r0, [sp, #44] ; 0x2c
8000996: 9017 str r0, [sp, #92] ; 0x5c
8000998: 9909 ldr r1, [sp, #36] ; 0x24
800099a: 9118 str r1, [sp, #96] ; 0x60
800099c: 9a08 ldr r2, [sp, #32]
800099e: 9219 str r2, [sp, #100] ; 0x64
80009a0: 2305 movs r3, #5
80009a2: 931c str r3, [sp, #112] ; 0x70
80009a4: ab17 add r3, sp, #92 ; 0x5c
80009a6: 931d str r3, [sp, #116] ; 0x74
80009a8: 9b1c ldr r3, [sp, #112] ; 0x70
80009aa: 931e str r3, [sp, #120] ; 0x78
80009ac: 9b1d ldr r3, [sp, #116] ; 0x74
80009ae: 931f str r3, [sp, #124] ; 0x7c
80009b0: 991f ldr r1, [sp, #124] ; 0x7c
80009b2: 981e ldr r0, [sp, #120] ; 0x78
80009b4: beab bkpt 0x00ab
80009b6: 901e str r0, [sp, #120] ; 0x78
80009b8: 981e ldr r0, [sp, #120] ; 0x78
80009ba: 9007 str r0, [sp, #28]
80009bc: e7ff b.n 80009be <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x96>
80009be: 9807 ldr r0, [sp, #28]
80009c0: 2800 cmp r0, #0
80009c2: d101 bne.n 80009c8 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xa0>
80009c4: e7ff b.n 80009c6 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x9e>
80009c6: e007 b.n 80009d8 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xb0>
80009c8: 9807 ldr r0, [sp, #28]
80009ca: 901a str r0, [sp, #104] ; 0x68
80009cc: 9815 ldr r0, [sp, #84] ; 0x54
80009ce: 9916 ldr r1, [sp, #88] ; 0x58
80009d0: f7ff ff87 bl 80008e2 <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17heab653f12bf80925E>
80009d4: 9006 str r0, [sp, #24]
80009d6: e001 b.n 80009dc <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xb4>
80009d8: b020 add sp, #128 ; 0x80
80009da: bd80 pop {r7, pc}
80009dc: 981a ldr r0, [sp, #104] ; 0x68
80009de: 2101 movs r1, #1
80009e0: 9a06 ldr r2, [sp, #24]
80009e2: 4282 cmp r2, r0
80009e4: bf28 it cs
80009e6: 2100 movcs r1, #0
80009e8: eba2 0000 sub.w r0, r2, r0
80009ec: 2900 cmp r1, #0
80009ee: 9005 str r0, [sp, #20]
80009f0: d11a bne.n 8000a28 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x100>
80009f2: e7ff b.n 80009f4 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xcc>
80009f4: 9805 ldr r0, [sp, #20]
80009f6: 901b str r0, [sp, #108] ; 0x6c
80009f8: 9815 ldr r0, [sp, #84] ; 0x54
80009fa: 9916 ldr r1, [sp, #88] ; 0x58
80009fc: f7ff ff86 bl 800090c <_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$6as_ptr17h7606bff54aa081d5E>
8000a00: 9004 str r0, [sp, #16]
8000a02: e7ff b.n 8000a04 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xdc>
8000a04: 991b ldr r1, [sp, #108] ; 0x6c
8000a06: 9804 ldr r0, [sp, #16]
8000a08: f7ff ff20 bl 800084c <_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h71168e86fc4aaef7E>
8000a0c: 9003 str r0, [sp, #12]
8000a0e: e7ff b.n 8000a10 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xe8>
8000a10: 991a ldr r1, [sp, #104] ; 0x68
8000a12: 9803 ldr r0, [sp, #12]
8000a14: f7ff ff2f bl 8000876 <_ZN4core5slice14from_raw_parts17h076aeb6c15c57f38E>
8000a18: 9002 str r0, [sp, #8]
8000a1a: 9101 str r1, [sp, #4]
8000a1c: e7ff b.n 8000a1e <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0xf6>
8000a1e: 9802 ldr r0, [sp, #8]
8000a20: 9015 str r0, [sp, #84] ; 0x54
8000a22: 9901 ldr r1, [sp, #4]
8000a24: 9116 str r1, [sp, #88] ; 0x58
8000a26: e794 b.n 8000952 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E+0x2a>
8000a28: f640 5064 movw r0, #3428 ; 0xd64
8000a2c: f6c0 0000 movt r0, #2048 ; 0x800
8000a30: f000 f838 bl 8000aa4 <_ZN4core9panicking5panic17hece962016015abc5E>
08000a34 <_ZN20cortex_m_semihosting2io6Stdout9write_all17h1795bbac02121e74E>:
8000a34: b580 push {r7, lr}
8000a36: 466f mov r7, sp
8000a38: b08a sub sp, #40 ; 0x28
8000a3a: 4613 mov r3, r2
8000a3c: 468c mov ip, r1
8000a3e: 4686 mov lr, r0
8000a40: 9004 str r0, [sp, #16]
8000a42: 9105 str r1, [sp, #20]
8000a44: 9206 str r2, [sp, #24]
8000a46: 9804 ldr r0, [sp, #16]
8000a48: 9007 str r0, [sp, #28]
8000a4a: 9805 ldr r0, [sp, #20]
8000a4c: 9906 ldr r1, [sp, #24]
8000a4e: 9008 str r0, [sp, #32]
8000a50: 9109 str r1, [sp, #36] ; 0x24
8000a52: 9908 ldr r1, [sp, #32]
8000a54: 9a09 ldr r2, [sp, #36] ; 0x24
8000a56: 2001 movs r0, #1
8000a58: 9303 str r3, [sp, #12]
8000a5a: f8cd c008 str.w ip, [sp, #8]
8000a5e: f8cd e004 str.w lr, [sp, #4]
8000a62: f7ff ff61 bl 8000928 <_ZN20cortex_m_semihosting2io9write_all17hec5b549dd47d3700E>
8000a66: e7ff b.n 8000a68 <_ZN20cortex_m_semihosting2io6Stdout9write_all17h1795bbac02121e74E+0x34>
8000a68: b00a add sp, #40 ; 0x28
8000a6a: bd80 pop {r7, pc}
08000a6c <_ZN20cortex_m_semihosting2io9write_str17h30d3451d491d8e31E>:
8000a6c: b580 push {r7, lr}
8000a6e: 466f mov r7, sp
8000a70: b08a sub sp, #40 ; 0x28
8000a72: 460a mov r2, r1
8000a74: 4603 mov r3, r0
8000a76: 9005 str r0, [sp, #20]
8000a78: 9106 str r1, [sp, #24]
8000a7a: 9805 ldr r0, [sp, #20]
8000a7c: 9906 ldr r1, [sp, #24]
8000a7e: 9007 str r0, [sp, #28]
8000a80: 9108 str r1, [sp, #32]
8000a82: 9807 ldr r0, [sp, #28]
8000a84: 9908 ldr r1, [sp, #32]
8000a86: 9204 str r2, [sp, #16]
8000a88: 9303 str r3, [sp, #12]
8000a8a: f7ff fec7 bl 800081c <_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8as_bytes17he103ffebaf423df3E>
8000a8e: 9002 str r0, [sp, #8]
8000a90: 9101 str r1, [sp, #4]
8000a92: e7ff b.n 8000a94 <_ZN20cortex_m_semihosting2io9write_str17h30d3451d491d8e31E+0x28>
8000a94: a809 add r0, sp, #36 ; 0x24
8000a96: 9902 ldr r1, [sp, #8]
8000a98: 9a01 ldr r2, [sp, #4]
8000a9a: f7ff ffcb bl 8000a34 <_ZN20cortex_m_semihosting2io6Stdout9write_all17h1795bbac02121e74E>
8000a9e: e7ff b.n 8000aa0 <_ZN20cortex_m_semihosting2io9write_str17h30d3451d491d8e31E+0x34>
8000aa0: b00a add sp, #40 ; 0x28
8000aa2: bd80 pop {r7, pc}
08000aa4 <_ZN4core9panicking5panic17hece962016015abc5E>:
8000aa4: b580 push {r7, lr}
8000aa6: 466f mov r7, sp
8000aa8: b08c sub sp, #48 ; 0x30
8000aaa: e890 100e ldmia.w r0, {r1, r2, r3, ip}
8000aae: 6900 ldr r0, [r0, #16]
8000ab0: e9cd 1207 strd r1, r2, [sp, #28]
8000ab4: a907 add r1, sp, #28
8000ab6: f640 5278 movw r2, #3448 ; 0xd78
8000aba: 9101 str r1, [sp, #4]
8000abc: 2101 movs r1, #1
8000abe: f6c0 0200 movt r2, #2048 ; 0x800
8000ac2: 9102 str r1, [sp, #8]
8000ac4: 2100 movs r1, #0
8000ac6: e9cd 1103 strd r1, r1, [sp, #12]
8000aca: e9cd 2105 strd r2, r1, [sp, #20]
8000ace: e9cd 3c09 strd r3, ip, [sp, #36] ; 0x24
8000ad2: 900b str r0, [sp, #44] ; 0x2c
8000ad4: a801 add r0, sp, #4
8000ad6: a909 add r1, sp, #36 ; 0x24
8000ad8: f000 f800 bl 8000adc <_ZN4core9panicking9panic_fmt17h9e3136bd57fa1d0dE>
08000adc <_ZN4core9panicking9panic_fmt17h9e3136bd57fa1d0dE>:
8000adc: b5f0 push {r4, r5, r6, r7, lr}
8000ade: af03 add r7, sp, #12
8000ae0: f84d bd04 str.w fp, [sp, #-4]!
8000ae4: b086 sub sp, #24
8000ae6: f100 0408 add.w r4, r0, #8
8000aea: e9d0 ce00 ldrd ip, lr, [r0]
8000aee: cc1c ldmia r4, {r2, r3, r4}
8000af0: 6940 ldr r0, [r0, #20]
8000af2: e9d1 5600 ldrd r5, r6, [r1]
8000af6: 6889 ldr r1, [r1, #8]
8000af8: e9cd 4000 strd r4, r0, [sp]
8000afc: e9cd 5602 strd r5, r6, [sp, #8]
8000b00: 9104 str r1, [sp, #16]
8000b02: 4660 mov r0, ip
8000b04: 4671 mov r1, lr
8000b06: f7ff fd5a bl 80005be <rust_begin_unwind>
08000b0a <__aeabi_memcpy4>:
8000b0a: 2a00 cmp r2, #0
8000b0c: bf08 it eq
8000b0e: 4770 bxeq lr
8000b10: f811 3b01 ldrb.w r3, [r1], #1
8000b14: 3a01 subs r2, #1
8000b16: f800 3b01 strb.w r3, [r0], #1
8000b1a: d1f9 bne.n 8000b10 <__aeabi_memcpy4+0x6>
8000b1c: 4770 bx lr
08000b1e <__aeabi_memclr4>:
8000b1e: 2900 cmp r1, #0
8000b20: bf08 it eq
8000b22: 4770 bxeq lr
8000b24: 2200 movs r2, #0
8000b26: f800 2b01 strb.w r2, [r0], #1
8000b2a: 3901 subs r1, #1
8000b2c: d1fb bne.n 8000b26 <__aeabi_memclr4+0x8>
8000b2e: 4770 bx lr
08000b30 <str.0>:
8000b30: 6548 6c6c 2c6f 7720 726f 646c 0a21 0000 Hello, world!...
08000b40 <str.0>:
8000b40: 682f 6d6f 2f65 656b 6765 6e61 2e2f 6163 /home/keegan/.ca
8000b50: 6772 2f6f 6572 6967 7473 7972 732f 6372 rgo/registry/src
8000b60: 672f 7469 7568 2e62 6f63 2d6d 6531 6363 /github.com-1ecc
8000b70: 3236 3939 6264 6539 3863 3332 722f 2d30 6299db9ec823/r0-
8000b80: 2e30 2e32 2f31 7273 2f63 696c 2e62 7372 0.2.1/src/lib.rs
08000b90 <str.1>:
8000b90: 7461 6574 706d 2074 6f74 7320 6275 7274 attempt to subtr
8000ba0: 6361 2074 6977 6874 6f20 6576 6672 6f6c act with overflo
8000bb0: 0077 0000 w...
08000bb4 <panic_loc.2>:
8000bb4: 0b90 0800 0021 0000 0b40 0800 0050 0000 ....!...@...P...
8000bc4: 00a6 0000 0000 0000 0000 0000 ............
08000bd0 <str.3>:
8000bd0: 7461 6574 706d 2074 6f74 6420 7669 6469 attempt to divid
8000be0: 2065 7962 7a20 7265 006f 0000 e by zero...
08000bec <panic_loc.4>:
8000bec: 0bd0 0800 0019 0000 0b40 0800 0050 0000 ........@...P...
8000bfc: 00a6 0000 ....
08000c00 <panic_loc.5>:
8000c00: 0b90 0800 0021 0000 0b40 0800 0050 0000 ....!...@...P...
8000c10: 0081 0000 ....
08000c14 <panic_loc.6>:
8000c14: 0bd0 0800 0019 0000 0b40 0800 0050 0000 ........@...P...
8000c24: 0081 0000 ....
08000c28 <ref.4>:
8000c28: ed04 e000 ....
08000c2c <const.5>:
8000c2c: 0c28 0800 (...
08000c30 <str.6>:
8000c30: 682f 6d6f 2f65 656b 6765 6e61 2e2f 6163 /home/keegan/.ca
8000c40: 6772 2f6f 6572 6967 7473 7972 732f 6372 rgo/registry/src
8000c50: 672f 7469 7568 2e62 6f63 2d6d 6531 6363 /github.com-1ecc
8000c60: 3236 3939 6264 6539 3863 3332 632f 726f 6299db9ec823/cor
8000c70: 6574 2d78 2d6d 2e30 2e32 2f37 7273 2f63 tex-m-0.2.7/src/
8000c80: 7865 6563 7470 6f69 2e6e 7372 0000 0000 exception.rs....
08000c90 <str.7>:
8000c90: 7461 6574 706d 2074 6f74 7320 6275 7274 attempt to subtr
8000ca0: 6361 2074 6977 6874 6f20 6576 6672 6f6c act with overflo
8000cb0: 0077 0000 w...
08000cb4 <panic_loc.8>:
8000cb4: 0c90 0800 0021 0000 0c30 0800 005c 0000 ....!...0...\...
8000cc4: 002f 0000 0000 0000 0000 0000 /...........
08000cd0 <str.2>:
8000cd0: 682f 6d6f 2f65 656b 6765 6e61 2e2f 6163 /home/keegan/.ca
8000ce0: 6772 2f6f 6572 6967 7473 7972 732f 6372 rgo/registry/src
8000cf0: 672f 7469 7568 2e62 6f63 2d6d 6531 6363 /github.com-1ecc
8000d00: 3236 3939 6264 6539 3863 3332 632f 726f 6299db9ec823/cor
8000d10: 6574 2d78 2d6d 6573 696d 6f68 7473 6e69 tex-m-semihostin
8000d20: 2d67 2e30 2e31 2f33 7273 2f63 6f69 722e g-0.1.3/src/io.r
8000d30: 0073 0000 0000 0000 0000 0000 0000 0000 s...............
08000d40 <str.3>:
8000d40: 7461 6574 706d 2074 6f74 7320 6275 7274 attempt to subtr
8000d50: 6361 2074 6977 6874 6f20 6576 6672 6f6c act with overflo
8000d60: 0077 0000 w...
08000d64 <panic_loc.4>:
8000d64: 0d40 0800 0021 0000 0cd0 0800 0061 0000 @...!.......a...
8000d74: 0017 0000 ....
$ sudo openocd -f interface/stlink-v2-1.cfg -f target/stm32f4discovery.cfg
Open On-Chip Debugger 0.9.0 (2017-03-07-13:28)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Warn : Interface already configured, ignoring
Error: already specified hl_layout stlink
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
adapter speed: 2000 kHz
adapter_nsrst_delay: 100
none separate
srst_only separate srst_nogate srst_open_drain connect_deassert_srst
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : clock speed 1800 kHz
Info : STLINK v2 JTAG v14 API v2 SWIM v0 VID 0x0483 PID 0x3748
Info : using stlink api v2
Info : Target voltage: 2.916528
Info : stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : accepting 'gdb' connection on tcp/3333
Info : device id = 0x10036413
Info : flash size = 1024kbytes
semihosting is enabled
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x0800065a msp: 0x20030000, semihosting
target state: halted
target halted due to breakpoint, current mode: Thread
xPSR: 0x61000000 pc: 0x20000042 msp: 0x20030000, semihosting
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x0800066c msp: 0x20030000, semihosting
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x0800066c msp: 0x20030000, semihosting
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment