Files
Embedded-Hacking/drivers/0x01_uart/build/0x01_uart.dis
T
Kevin Thomas a98b864d4c Fixed drivers
2026-03-23 11:20:32 -04:00

2403 lines
97 KiB
Plaintext

C:/Users/assem.KEVINTHOMAS/OneDrive/Documents/Embedded-Hacking/drivers/0x01_uart/build/0x01_uart.elf: file format elf32-littlearm
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 000015a4 10000000 10000000 00001000 2**3
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .rodata 00000144 100015a4 100015a4 000025a4 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
2 .ARM.exidx 00000008 100016e8 100016e8 000026e8 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
3 .binary_info 00000020 100016f0 100016f0 000026f0 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .ram_vector_table 00000110 20000000 20000000 00004000 2**2
ALLOC
5 .uninitialized_data 00000000 20000110 20000110 00003860 2**0
CONTENTS
6 .data 0000013c 20000110 10001710 00003110 2**3
CONTENTS, ALLOC, LOAD, READONLY, CODE
7 .tdata 00000000 2000024c 2000024c 00003860 2**0
CONTENTS, ALLOC, LOAD, DATA, THREAD_LOCAL
8 .tbss 00000000 2000024c 2000024c 00000000 2**0
ALLOC, THREAD_LOCAL
9 .bss 00000218 20000250 1000184c 00004250 2**3
ALLOC
10 .heap 00000800 20000468 1000184c 00004468 2**2
ALLOC, READONLY
11 .scratch_x 00000000 20080000 20080000 00003860 2**0
CONTENTS
12 .scratch_y 00000000 20081000 20081000 00003860 2**0
CONTENTS
13 .stack_dummy 00000800 20081000 20081000 00004000 2**5
ALLOC, READONLY
14 .flash_end 00000014 1000184c 1000184c 0000384c 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
15 .ARM.attributes 00000034 00000000 00000000 00003860 2**0
CONTENTS, READONLY
16 .comment 00000045 00000000 00000000 00003894 2**0
CONTENTS, READONLY
17 .debug_info 0001f3d3 00000000 00000000 000038d9 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
18 .debug_abbrev 0000539d 00000000 00000000 00022cac 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
19 .debug_loclists 0000f904 00000000 00000000 00028049 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
20 .debug_aranges 00000ab8 00000000 00000000 00037950 2**3
CONTENTS, READONLY, DEBUGGING, OCTETS
21 .debug_rnglists 00002de9 00000000 00000000 00038408 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
22 .debug_line 00015490 00000000 00000000 0003b1f1 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
23 .debug_str 00005507 00000000 00000000 00050681 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
24 .debug_frame 00001de0 00000000 00000000 00055b88 2**2
CONTENTS, READONLY, DEBUGGING, OCTETS
25 .debug_line_str 0000018f 00000000 00000000 00057968 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
C:/Users/assem.KEVINTHOMAS/OneDrive/Documents/Embedded-Hacking/drivers/0x01_uart/build/0x01_uart.elf: file format elf32-littlearm
Disassembly of section .text:
10000000 <__VECTOR_TABLE>:
10000000: 20082000 .word 0x20082000
10000004: 1000015d .word 0x1000015d
10000008: 1000011b .word 0x1000011b
1000000c: 1000011d .word 0x1000011d
10000010: 10000111 .word 0x10000111
10000014: 10000111 .word 0x10000111
10000018: 10000111 .word 0x10000111
1000001c: 10000111 .word 0x10000111
10000020: 10000119 .word 0x10000119
10000024: 10000119 .word 0x10000119
10000028: 10000119 .word 0x10000119
1000002c: 1000011f .word 0x1000011f
10000030: 10000111 .word 0x10000111
10000034: 10000119 .word 0x10000119
10000038: 10000121 .word 0x10000121
1000003c: 10000123 .word 0x10000123
10000040: 10000111 .word 0x10000111
10000044: 10000111 .word 0x10000111
10000048: 10000111 .word 0x10000111
1000004c: 10000111 .word 0x10000111
10000050: 10000111 .word 0x10000111
10000054: 10000111 .word 0x10000111
10000058: 10000111 .word 0x10000111
1000005c: 10000111 .word 0x10000111
10000060: 10000111 .word 0x10000111
10000064: 10000111 .word 0x10000111
10000068: 10000111 .word 0x10000111
1000006c: 10000111 .word 0x10000111
10000070: 10000111 .word 0x10000111
10000074: 10000111 .word 0x10000111
10000078: 10000111 .word 0x10000111
1000007c: 10000111 .word 0x10000111
10000080: 10000111 .word 0x10000111
10000084: 10000111 .word 0x10000111
10000088: 10000111 .word 0x10000111
1000008c: 10000111 .word 0x10000111
10000090: 10000111 .word 0x10000111
10000094: 10000111 .word 0x10000111
10000098: 10000111 .word 0x10000111
1000009c: 10000111 .word 0x10000111
100000a0: 10000111 .word 0x10000111
100000a4: 10000111 .word 0x10000111
100000a8: 10000111 .word 0x10000111
100000ac: 10000111 .word 0x10000111
100000b0: 10000111 .word 0x10000111
100000b4: 10000111 .word 0x10000111
100000b8: 10000111 .word 0x10000111
100000bc: 10000111 .word 0x10000111
100000c0: 10000111 .word 0x10000111
100000c4: 10000111 .word 0x10000111
100000c8: 10000111 .word 0x10000111
100000cc: 10000111 .word 0x10000111
100000d0: 10000111 .word 0x10000111
100000d4: 10000111 .word 0x10000111
100000d8: 10000111 .word 0x10000111
100000dc: 10000111 .word 0x10000111
100000e0: 10000111 .word 0x10000111
100000e4: 10000111 .word 0x10000111
100000e8: 10000111 .word 0x10000111
100000ec: 10000111 .word 0x10000111
100000f0: 10000111 .word 0x10000111
100000f4: 10000111 .word 0x10000111
100000f8: 10000111 .word 0x10000111
100000fc: 10000111 .word 0x10000111
10000100: 10000111 .word 0x10000111
10000104: 10000111 .word 0x10000111
10000108: 10000111 .word 0x10000111
1000010c: 10000111 .word 0x10000111
10000110 <__unhandled_user_irq>:
10000110: f3ef 8005 mrs r0, IPSR
10000114: 3810 subs r0, #16
10000116 <unhandled_user_irq_num_in_r0>:
10000116: be00 bkpt 0x0000
10000118 <isr_invalid>:
10000118: be00 bkpt 0x0000
1000011a <isr_nmi>:
1000011a: be00 bkpt 0x0000
1000011c <isr_hardfault>:
1000011c: be00 bkpt 0x0000
1000011e <isr_svcall>:
1000011e: be00 bkpt 0x0000
10000120 <isr_pendsv>:
10000120: be00 bkpt 0x0000
10000122 <isr_systick>:
10000122: be00 bkpt 0x0000
10000124 <__default_isrs_end>:
10000124: 7188ebf2 .word 0x7188ebf2
10000128: 100016f0 .word 0x100016f0
1000012c: 10001710 .word 0x10001710
10000130: 100001a0 .word 0x100001a0
10000134: e71aa390 .word 0xe71aa390
10000138 <__binary_info_header_end>:
10000138: ffffded3 .word 0xffffded3
1000013c: 10210142 .word 0x10210142
10000140: 000001ff .word 0x000001ff
10000144: 00001714 .word 0x00001714
10000148: ab123579 .word 0xab123579
1000014c <_entry_point>:
1000014c: f04f 0000 mov.w r0, #0
10000150 <_enter_vtable_in_r0>:
10000150: 491e ldr r1, [pc, #120] @ (100001cc <data_cpy_table+0x2c>)
10000152: 6008 str r0, [r1, #0]
10000154: c806 ldmia r0!, {r1, r2}
10000156: f381 8808 msr MSP, r1
1000015a: 4710 bx r2
1000015c <_reset_handler>:
1000015c: f04f 4050 mov.w r0, #3489660928 @ 0xd0000000
10000160: 6800 ldr r0, [r0, #0]
10000162: b110 cbz r0, 1000016a <hold_non_core0_in_bootrom+0x6>
10000164 <hold_non_core0_in_bootrom>:
10000164: f04f 0000 mov.w r0, #0
10000168: e7f2 b.n 10000150 <_enter_vtable_in_r0>
1000016a: a40d add r4, pc, #52 @ (adr r4, 100001a0 <data_cpy_table>)
1000016c: cc0e ldmia r4!, {r1, r2, r3}
1000016e: 2900 cmp r1, #0
10000170: d002 beq.n 10000178 <hold_non_core0_in_bootrom+0x14>
10000172: f000 f812 bl 1000019a <data_cpy>
10000176: e7f9 b.n 1000016c <hold_non_core0_in_bootrom+0x8>
10000178: 4915 ldr r1, [pc, #84] @ (100001d0 <data_cpy_table+0x30>)
1000017a: 4a16 ldr r2, [pc, #88] @ (100001d4 <data_cpy_table+0x34>)
1000017c: 2000 movs r0, #0
1000017e: e000 b.n 10000182 <bss_fill_test>
10000180 <bss_fill_loop>:
10000180: c101 stmia r1!, {r0}
10000182 <bss_fill_test>:
10000182: 4291 cmp r1, r2
10000184: d1fc bne.n 10000180 <bss_fill_loop>
10000186 <platform_entry>:
10000186: 4914 ldr r1, [pc, #80] @ (100001d8 <data_cpy_table+0x38>)
10000188: 4788 blx r1
1000018a: 4914 ldr r1, [pc, #80] @ (100001dc <data_cpy_table+0x3c>)
1000018c: 4788 blx r1
1000018e: 4914 ldr r1, [pc, #80] @ (100001e0 <data_cpy_table+0x40>)
10000190: 4788 blx r1
10000192: be00 bkpt 0x0000
10000194: e7fd b.n 10000192 <platform_entry+0xc>
10000196 <data_cpy_loop>:
10000196: c901 ldmia r1!, {r0}
10000198: c201 stmia r2!, {r0}
1000019a <data_cpy>:
1000019a: 429a cmp r2, r3
1000019c: d3fb bcc.n 10000196 <data_cpy_loop>
1000019e: 4770 bx lr
100001a0 <data_cpy_table>:
100001a0: 10001710 .word 0x10001710
100001a4: 20000110 .word 0x20000110
100001a8: 2000024c .word 0x2000024c
100001ac: 1000184c .word 0x1000184c
100001b0: 20080000 .word 0x20080000
100001b4: 20080000 .word 0x20080000
100001b8: 1000184c .word 0x1000184c
100001bc: 20081000 .word 0x20081000
100001c0: 20081000 .word 0x20081000
100001c4: 00000000 .word 0x00000000
100001c8: 4770 bx lr
100001ca: 0000 .short 0x0000
100001cc: e000ed08 .word 0xe000ed08
100001d0: 2000024c .word 0x2000024c
100001d4: 20000468 .word 0x20000468
100001d8: 1000117d .word 0x1000117d
100001dc: 10000235 .word 0x10000235
100001e0: 10001175 .word 0x10001175
100001e4 <_init>:
100001e4: b5f8 push {r3, r4, r5, r6, r7, lr}
100001e6: bf00 nop
100001e8 <register_tm_clones>:
100001e8: 4b06 ldr r3, [pc, #24] @ (10000204 <register_tm_clones+0x1c>)
100001ea: 4907 ldr r1, [pc, #28] @ (10000208 <register_tm_clones+0x20>)
100001ec: 1ac9 subs r1, r1, r3
100001ee: 1089 asrs r1, r1, #2
100001f0: bf48 it mi
100001f2: 3101 addmi r1, #1
100001f4: 1049 asrs r1, r1, #1
100001f6: d003 beq.n 10000200 <register_tm_clones+0x18>
100001f8: 4b04 ldr r3, [pc, #16] @ (1000020c <register_tm_clones+0x24>)
100001fa: b10b cbz r3, 10000200 <register_tm_clones+0x18>
100001fc: 4801 ldr r0, [pc, #4] @ (10000204 <register_tm_clones+0x1c>)
100001fe: 4718 bx r3
10000200: 4770 bx lr
10000202: bf00 nop
10000204: 2000024c .word 0x2000024c
10000208: 2000024c .word 0x2000024c
1000020c: 00000000 .word 0x00000000
10000210 <frame_dummy>:
10000210: b508 push {r3, lr}
10000212: 4b05 ldr r3, [pc, #20] @ (10000228 <frame_dummy+0x18>)
10000214: b11b cbz r3, 1000021e <frame_dummy+0xe>
10000216: 4905 ldr r1, [pc, #20] @ (1000022c <frame_dummy+0x1c>)
10000218: 4805 ldr r0, [pc, #20] @ (10000230 <frame_dummy+0x20>)
1000021a: f3af 8000 nop.w
1000021e: e8bd 4008 ldmia.w sp!, {r3, lr}
10000222: f7ff bfe1 b.w 100001e8 <register_tm_clones>
10000226: bf00 nop
10000228: 00000000 .word 0x00000000
1000022c: 20000428 .word 0x20000428
10000230: 100015a4 .word 0x100015a4
10000234 <main>:
10000234: f44f 32e1 mov.w r2, #115200 @ 0x1c200
10000238: 2101 movs r1, #1
1000023a: 2000 movs r0, #0
1000023c: b508 push {r3, lr}
1000023e: f000 f815 bl 1000026c <uart_driver_init>
10000242: 4808 ldr r0, [pc, #32] @ (10000264 <main+0x30>)
10000244: f000 f844 bl 100002d0 <uart_driver_puts>
10000248: 4807 ldr r0, [pc, #28] @ (10000268 <main+0x34>)
1000024a: f000 f841 bl 100002d0 <uart_driver_puts>
1000024e: f000 f821 bl 10000294 <uart_driver_is_readable>
10000252: 2800 cmp r0, #0
10000254: d0fb beq.n 1000024e <main+0x1a>
10000256: f000 f829 bl 100002ac <uart_driver_getchar>
1000025a: f000 f847 bl 100002ec <uart_driver_to_upper>
1000025e: f000 f82f bl 100002c0 <uart_driver_putchar>
10000262: e7f4 b.n 1000024e <main+0x1a>
10000264: 100015a4 .word 0x100015a4
10000268: 100015c8 .word 0x100015c8
1000026c <uart_driver_init>:
1000026c: b538 push {r3, r4, r5, lr}
1000026e: 4605 mov r5, r0
10000270: 460c mov r4, r1
10000272: 4807 ldr r0, [pc, #28] @ (10000290 <uart_driver_init+0x24>)
10000274: 4611 mov r1, r2
10000276: f000 fccb bl 10000c10 <uart_init>
1000027a: 4628 mov r0, r5
1000027c: 2102 movs r1, #2
1000027e: f000 f83d bl 100002fc <gpio_set_function>
10000282: 4620 mov r0, r4
10000284: e8bd 4038 ldmia.w sp!, {r3, r4, r5, lr}
10000288: 2102 movs r1, #2
1000028a: f000 b837 b.w 100002fc <gpio_set_function>
1000028e: bf00 nop
10000290: 40070000 .word 0x40070000
10000294 <uart_driver_is_readable>:
10000294: 4b04 ldr r3, [pc, #16] @ (100002a8 <uart_driver_is_readable+0x14>)
10000296: 6998 ldr r0, [r3, #24]
10000298: f3c0 1000 ubfx r0, r0, #4, #1
1000029c: f080 0001 eor.w r0, r0, #1
100002a0: f000 0001 and.w r0, r0, #1
100002a4: 4770 bx lr
100002a6: bf00 nop
100002a8: 40070000 .word 0x40070000
100002ac <uart_driver_getchar>:
100002ac: 4a03 ldr r2, [pc, #12] @ (100002bc <uart_driver_getchar+0x10>)
100002ae: 6993 ldr r3, [r2, #24]
100002b0: 06db lsls r3, r3, #27
100002b2: d4fc bmi.n 100002ae <uart_driver_getchar+0x2>
100002b4: 6810 ldr r0, [r2, #0]
100002b6: b2c0 uxtb r0, r0
100002b8: 4770 bx lr
100002ba: bf00 nop
100002bc: 40070000 .word 0x40070000
100002c0 <uart_driver_putchar>:
100002c0: 4a02 ldr r2, [pc, #8] @ (100002cc <uart_driver_putchar+0xc>)
100002c2: 6993 ldr r3, [r2, #24]
100002c4: 069b lsls r3, r3, #26
100002c6: d4fc bmi.n 100002c2 <uart_driver_putchar+0x2>
100002c8: 6010 str r0, [r2, #0]
100002ca: 4770 bx lr
100002cc: 40070000 .word 0x40070000
100002d0 <uart_driver_puts>:
100002d0: 7801 ldrb r1, [r0, #0]
100002d2: b141 cbz r1, 100002e6 <uart_driver_puts+0x16>
100002d4: 4a04 ldr r2, [pc, #16] @ (100002e8 <uart_driver_puts+0x18>)
100002d6: 6993 ldr r3, [r2, #24]
100002d8: 069b lsls r3, r3, #26
100002da: d4fc bmi.n 100002d6 <uart_driver_puts+0x6>
100002dc: 6011 str r1, [r2, #0]
100002de: f810 1f01 ldrb.w r1, [r0, #1]!
100002e2: 2900 cmp r1, #0
100002e4: d1f7 bne.n 100002d6 <uart_driver_puts+0x6>
100002e6: 4770 bx lr
100002e8: 40070000 .word 0x40070000
100002ec <uart_driver_to_upper>:
100002ec: f1a0 0361 sub.w r3, r0, #97 @ 0x61
100002f0: 2b19 cmp r3, #25
100002f2: bf9c itt ls
100002f4: 3820 subls r0, #32
100002f6: b2c0 uxtbls r0, r0
100002f8: 4770 bx lr
100002fa: bf00 nop
100002fc <gpio_set_function>:
100002fc: b410 push {r4}
100002fe: f44f 7480 mov.w r4, #256 @ 0x100
10000302: 4b0c ldr r3, [pc, #48] @ (10000334 <gpio_set_function+0x38>)
10000304: f853 2020 ldr.w r2, [r3, r0, lsl #2]
10000308: eb03 0380 add.w r3, r3, r0, lsl #2
1000030c: 00c0 lsls r0, r0, #3
1000030e: f082 0240 eor.w r2, r2, #64 @ 0x40
10000312: f100 4080 add.w r0, r0, #1073741824 @ 0x40000000
10000316: f503 5c80 add.w ip, r3, #4096 @ 0x1000
1000031a: f002 02c0 and.w r2, r2, #192 @ 0xc0
1000031e: f500 3020 add.w r0, r0, #163840 @ 0x28000
10000322: f503 5340 add.w r3, r3, #12288 @ 0x3000
10000326: f8cc 2000 str.w r2, [ip]
1000032a: 6041 str r1, [r0, #4]
1000032c: 601c str r4, [r3, #0]
1000032e: f85d 4b04 ldr.w r4, [sp], #4
10000332: 4770 bx lr
10000334: 40038004 .word 0x40038004
10000338 <panic>:
10000338: b40f push {r0, r1, r2, r3}
1000033a: b500 push {lr}
1000033c: b083 sub sp, #12
1000033e: 9c04 ldr r4, [sp, #16]
10000340: 4807 ldr r0, [pc, #28] @ (10000360 <panic+0x28>)
10000342: f001 f841 bl 100013c8 <__wrap_puts>
10000346: b13c cbz r4, 10000358 <panic+0x20>
10000348: a905 add r1, sp, #20
1000034a: 4620 mov r0, r4
1000034c: 9101 str r1, [sp, #4]
1000034e: f000 fef7 bl 10001140 <weak_raw_vprintf>
10000352: 4804 ldr r0, [pc, #16] @ (10000364 <panic+0x2c>)
10000354: f001 f838 bl 100013c8 <__wrap_puts>
10000358: 2001 movs r0, #1
1000035a: f000 ff09 bl 10001170 <_exit>
1000035e: bf00 nop
10000360: 100015fc .word 0x100015fc
10000364: 1000160c .word 0x1000160c
10000368 <hw_claim_or_assert>:
10000368: b570 push {r4, r5, r6, lr}
1000036a: 4686 mov lr, r0
1000036c: f3ef 8510 mrs r5, PRIMASK
10000370: b672 cpsid i
10000372: 4c12 ldr r4, [pc, #72] @ (100003bc <hw_claim_or_assert+0x54>)
10000374: e8d4 6fcf ldaexb r6, [r4]
10000378: 2001 movs r0, #1
1000037a: 2e00 cmp r6, #0
1000037c: d1fa bne.n 10000374 <hw_claim_or_assert+0xc>
1000037e: e8c4 0f46 strexb r6, r0, [r4]
10000382: 2e00 cmp r6, #0
10000384: d1f6 bne.n 10000374 <hw_claim_or_assert+0xc>
10000386: f3bf 8f5f dmb sy
1000038a: f04f 0c01 mov.w ip, #1
1000038e: 08c8 lsrs r0, r1, #3
10000390: f001 0307 and.w r3, r1, #7
10000394: fa0c f303 lsl.w r3, ip, r3
10000398: f81e c000 ldrb.w ip, [lr, r0]
1000039c: ea1c 0603 ands.w r6, ip, r3
100003a0: d108 bne.n 100003b4 <hw_claim_or_assert+0x4c>
100003a2: ea4c 0c03 orr.w ip, ip, r3
100003a6: f80e c000 strb.w ip, [lr, r0]
100003aa: e8c4 6f8f stlb r6, [r4]
100003ae: f385 8810 msr PRIMASK, r5
100003b2: bd70 pop {r4, r5, r6, pc}
100003b4: 4610 mov r0, r2
100003b6: f7ff ffbf bl 10000338 <panic>
100003ba: bf00 nop
100003bc: 200003db .word 0x200003db
100003c0 <next_striped_spin_lock_num>:
100003c0: 4a04 ldr r2, [pc, #16] @ (100003d4 <next_striped_spin_lock_num+0x14>)
100003c2: 7810 ldrb r0, [r2, #0]
100003c4: 1c43 adds r3, r0, #1
100003c6: b2db uxtb r3, r3
100003c8: 2b18 cmp r3, #24
100003ca: bf28 it cs
100003cc: 2310 movcs r3, #16
100003ce: 7013 strb r3, [r2, #0]
100003d0: 4770 bx lr
100003d2: bf00 nop
100003d4: 20000228 .word 0x20000228
100003d8 <spinlock_set_extexclall>:
100003d8: f04f 22e0 mov.w r2, #3758153728 @ 0xe000e000
100003dc: 6893 ldr r3, [r2, #8]
100003de: f043 5300 orr.w r3, r3, #536870912 @ 0x20000000
100003e2: 6093 str r3, [r2, #8]
100003e4: 4770 bx lr
100003e6: bf00 nop
100003e8 <spin_locks_reset>:
100003e8: 2100 movs r1, #0
100003ea: 4b04 ldr r3, [pc, #16] @ (100003fc <spin_locks_reset+0x14>)
100003ec: f103 0220 add.w r2, r3, #32
100003f0: e8c3 1f8f stlb r1, [r3]
100003f4: 3301 adds r3, #1
100003f6: 4293 cmp r3, r2
100003f8: d1fa bne.n 100003f0 <spin_locks_reset+0x8>
100003fa: 4770 bx lr
100003fc: 200003d0 .word 0x200003d0
10000400 <runtime_init_per_core_irq_priorities>:
10000400: f04f 23e0 mov.w r3, #3758153728 @ 0xe000e000
10000404: f04f 3280 mov.w r2, #2155905152 @ 0x80808080
10000408: f8c3 2400 str.w r2, [r3, #1024] @ 0x400
1000040c: f8c3 2404 str.w r2, [r3, #1028] @ 0x404
10000410: f8c3 2408 str.w r2, [r3, #1032] @ 0x408
10000414: f8c3 240c str.w r2, [r3, #1036] @ 0x40c
10000418: f8c3 2410 str.w r2, [r3, #1040] @ 0x410
1000041c: f8c3 2414 str.w r2, [r3, #1044] @ 0x414
10000420: f8c3 2418 str.w r2, [r3, #1048] @ 0x418
10000424: f8c3 241c str.w r2, [r3, #1052] @ 0x41c
10000428: f8c3 2420 str.w r2, [r3, #1056] @ 0x420
1000042c: f8c3 2424 str.w r2, [r3, #1060] @ 0x424
10000430: f8c3 2428 str.w r2, [r3, #1064] @ 0x428
10000434: f8c3 242c str.w r2, [r3, #1068] @ 0x42c
10000438: f8c3 2430 str.w r2, [r3, #1072] @ 0x430
1000043c: b662 cpsie i
1000043e: 4770 bx lr
10000440 <irq_set_enabled>:
10000440: 2301 movs r3, #1
10000442: f000 021f and.w r2, r0, #31
10000446: 4093 lsls r3, r2
10000448: 0940 lsrs r0, r0, #5
1000044a: b141 cbz r1, 1000045e <irq_set_enabled+0x1e>
1000044c: 0080 lsls r0, r0, #2
1000044e: f100 4060 add.w r0, r0, #3758096384 @ 0xe0000000
10000452: f500 4061 add.w r0, r0, #57600 @ 0xe100
10000456: f8c0 3180 str.w r3, [r0, #384] @ 0x180
1000045a: 6003 str r3, [r0, #0]
1000045c: 4770 bx lr
1000045e: 4a02 ldr r2, [pc, #8] @ (10000468 <irq_set_enabled+0x28>)
10000460: 3020 adds r0, #32
10000462: f842 3020 str.w r3, [r2, r0, lsl #2]
10000466: 4770 bx lr
10000468: e000e100 .word 0xe000e100
1000046c <irq_set_exclusive_handler>:
1000046c: b5f8 push {r3, r4, r5, r6, r7, lr}
1000046e: 460d mov r5, r1
10000470: f3ef 8710 mrs r7, PRIMASK
10000474: b672 cpsid i
10000476: 4e12 ldr r6, [pc, #72] @ (100004c0 <irq_set_exclusive_handler+0x54>)
10000478: e8d6 2fcf ldaexb r2, [r6]
1000047c: 2301 movs r3, #1
1000047e: 2a00 cmp r2, #0
10000480: d1fa bne.n 10000478 <irq_set_exclusive_handler+0xc>
10000482: e8c6 3f42 strexb r2, r3, [r6]
10000486: 2a00 cmp r2, #0
10000488: d1f6 bne.n 10000478 <irq_set_exclusive_handler+0xc>
1000048a: f3bf 8f5f dmb sy
1000048e: 4b0d ldr r3, [pc, #52] @ (100004c4 <irq_set_exclusive_handler+0x58>)
10000490: f100 0410 add.w r4, r0, #16
10000494: 689b ldr r3, [r3, #8]
10000496: 4a0c ldr r2, [pc, #48] @ (100004c8 <irq_set_exclusive_handler+0x5c>)
10000498: f853 3024 ldr.w r3, [r3, r4, lsl #2]
1000049c: 4293 cmp r3, r2
1000049e: d003 beq.n 100004a8 <irq_set_exclusive_handler+0x3c>
100004a0: 4299 cmp r1, r3
100004a2: d001 beq.n 100004a8 <irq_set_exclusive_handler+0x3c>
100004a4: f000 fd34 bl 10000f10 <hard_assertion_failure>
100004a8: 4b06 ldr r3, [pc, #24] @ (100004c4 <irq_set_exclusive_handler+0x58>)
100004aa: 689b ldr r3, [r3, #8]
100004ac: f843 5024 str.w r5, [r3, r4, lsl #2]
100004b0: f3bf 8f5f dmb sy
100004b4: 2300 movs r3, #0
100004b6: e8c6 3f8f stlb r3, [r6]
100004ba: f387 8810 msr PRIMASK, r7
100004be: bdf8 pop {r3, r4, r5, r6, r7, pc}
100004c0: 200003d9 .word 0x200003d9
100004c4: e000ed00 .word 0xe000ed00
100004c8: 10000111 .word 0x10000111
100004cc <lock_init>:
100004cc: 4b01 ldr r3, [pc, #4] @ (100004d4 <lock_init+0x8>)
100004ce: 440b add r3, r1
100004d0: 6003 str r3, [r0, #0]
100004d2: 4770 bx lr
100004d4: 200003d0 .word 0x200003d0
100004d8 <runtime_init_mutex>:
100004d8: b570 push {r4, r5, r6, lr}
100004da: 4c10 ldr r4, [pc, #64] @ (1000051c <runtime_init_mutex+0x44>)
100004dc: 4d10 ldr r5, [pc, #64] @ (10000520 <runtime_init_mutex+0x48>)
100004de: 42ac cmp r4, r5
100004e0: d20e bcs.n 10000500 <runtime_init_mutex+0x28>
100004e2: 26ff movs r6, #255 @ 0xff
100004e4: 6823 ldr r3, [r4, #0]
100004e6: b163 cbz r3, 10000502 <runtime_init_mutex+0x2a>
100004e8: f7ff ff6a bl 100003c0 <next_striped_spin_lock_num>
100004ec: 4601 mov r1, r0
100004ee: 4620 mov r0, r4
100004f0: f7ff ffec bl 100004cc <lock_init>
100004f4: 80a6 strh r6, [r4, #4]
100004f6: f3bf 8f5f dmb sy
100004fa: 3408 adds r4, #8
100004fc: 42ac cmp r4, r5
100004fe: d3f1 bcc.n 100004e4 <runtime_init_mutex+0xc>
10000500: bd70 pop {r4, r5, r6, pc}
10000502: f7ff ff5d bl 100003c0 <next_striped_spin_lock_num>
10000506: 4601 mov r1, r0
10000508: 4620 mov r0, r4
1000050a: f7ff ffdf bl 100004cc <lock_init>
1000050e: 7126 strb r6, [r4, #4]
10000510: f3bf 8f5f dmb sy
10000514: 3408 adds r4, #8
10000516: 42ac cmp r4, r5
10000518: d3e4 bcc.n 100004e4 <runtime_init_mutex+0xc>
1000051a: bd70 pop {r4, r5, r6, pc}
1000051c: 20000244 .word 0x20000244
10000520: 2000024c .word 0x2000024c
10000524 <sleep_until_callback>:
10000524: 4b0d ldr r3, [pc, #52] @ (1000055c <sleep_until_callback+0x38>)
10000526: 681a ldr r2, [r3, #0]
10000528: f3ef 8110 mrs r1, PRIMASK
1000052c: b672 cpsid i
1000052e: e8d2 cfcf ldaexb ip, [r2]
10000532: 2001 movs r0, #1
10000534: f1bc 0f00 cmp.w ip, #0
10000538: d1f9 bne.n 1000052e <sleep_until_callback+0xa>
1000053a: e8c2 0f4c strexb ip, r0, [r2]
1000053e: f1bc 0f00 cmp.w ip, #0
10000542: d1f4 bne.n 1000052e <sleep_until_callback+0xa>
10000544: f3bf 8f5f dmb sy
10000548: 2200 movs r2, #0
1000054a: 681b ldr r3, [r3, #0]
1000054c: e8c3 2f8f stlb r2, [r3]
10000550: f381 8810 msr PRIMASK, r1
10000554: bf40 sev
10000556: 2000 movs r0, #0
10000558: 2100 movs r1, #0
1000055a: 4770 bx lr
1000055c: 20000460 .word 0x20000460
10000560 <alarm_pool_irq_handler>:
10000560: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
10000564: ed2d 8b02 vpush {d8}
10000568: b085 sub sp, #20
1000056a: f3ef 8305 mrs r3, IPSR
1000056e: b2db uxtb r3, r3
10000570: 3b10 subs r3, #16
10000572: 089a lsrs r2, r3, #2
10000574: bf18 it ne
10000576: 2201 movne r2, #1
10000578: f04f 0101 mov.w r1, #1
1000057c: f003 0b03 and.w fp, r3, #3
10000580: bf18 it ne
10000582: 4daf ldrne r5, [pc, #700] @ (10000840 <alarm_pool_irq_handler+0x2e0>)
10000584: 4baf ldr r3, [pc, #700] @ (10000844 <alarm_pool_irq_handler+0x2e4>)
10000586: bf08 it eq
10000588: 4daf ldreq r5, [pc, #700] @ (10000848 <alarm_pool_irq_handler+0x2e8>)
1000058a: eb0b 0282 add.w r2, fp, r2, lsl #2
1000058e: f853 6022 ldr.w r6, [r3, r2, lsl #2]
10000592: fa01 f20b lsl.w r2, r1, fp
10000596: f505 5341 add.w r3, r5, #12352 @ 0x3040
1000059a: ed9f 8ba7 vldr d8, [pc, #668] @ 10000838 <alarm_pool_irq_handler+0x2d8>
1000059e: 9201 str r2, [sp, #4]
100005a0: 605a str r2, [r3, #4]
100005a2: e02f b.n 10000604 <alarm_pool_irq_handler+0xa4>
100005a4: 88b3 ldrh r3, [r6, #4]
100005a6: 041c lsls r4, r3, #16
100005a8: f140 8093 bpl.w 100006d2 <alarm_pool_irq_handler+0x172>
100005ac: 79b3 ldrb r3, [r6, #6]
100005ae: 2b00 cmp r3, #0
100005b0: f040 80dd bne.w 1000076e <alarm_pool_irq_handler+0x20e>
100005b4: f9b6 2008 ldrsh.w r2, [r6, #8]
100005b8: 2a00 cmp r2, #0
100005ba: f2c0 811e blt.w 100007fa <alarm_pool_irq_handler+0x29a>
100005be: 6973 ldr r3, [r6, #20]
100005c0: eb02 0242 add.w r2, r2, r2, lsl #1
100005c4: eb03 03c2 add.w r3, r3, r2, lsl #3
100005c8: e9d3 4702 ldrd r4, r7, [r3, #8]
100005cc: f1b7 3fff cmp.w r7, #4294967295
100005d0: bf08 it eq
100005d2: f1b4 3fff cmpeq.w r4, #4294967295
100005d6: d00e beq.n 100005f6 <alarm_pool_irq_handler+0x96>
100005d8: eb05 018b add.w r1, r5, fp, lsl #2
100005dc: 6aab ldr r3, [r5, #40] @ 0x28
100005de: 690a ldr r2, [r1, #16]
100005e0: 1ad2 subs r2, r2, r3
100005e2: 1ae3 subs r3, r4, r3
100005e4: 4293 cmp r3, r2
100005e6: d305 bcc.n 100005f4 <alarm_pool_irq_handler+0x94>
100005e8: 2301 movs r3, #1
100005ea: 6a2a ldr r2, [r5, #32]
100005ec: fa03 f30b lsl.w r3, r3, fp
100005f0: 4213 tst r3, r2
100005f2: d100 bne.n 100005f6 <alarm_pool_irq_handler+0x96>
100005f4: 610c str r4, [r1, #16]
100005f6: 4628 mov r0, r5
100005f8: f000 faca bl 10000b90 <timer_time_us_64>
100005fc: 42a0 cmp r0, r4
100005fe: 41b9 sbcs r1, r7
10000600: f2c0 80fb blt.w 100007fa <alarm_pool_irq_handler+0x29a>
10000604: f9b6 3008 ldrsh.w r3, [r6, #8]
10000608: 9a01 ldr r2, [sp, #4]
1000060a: 2b00 cmp r3, #0
1000060c: 9300 str r3, [sp, #0]
1000060e: 63ea str r2, [r5, #60] @ 0x3c
10000610: dbc8 blt.n 100005a4 <alarm_pool_irq_handler+0x44>
10000612: f8d6 8014 ldr.w r8, [r6, #20]
10000616: eb03 0943 add.w r9, r3, r3, lsl #1
1000061a: 4628 mov r0, r5
1000061c: eb08 07c9 add.w r7, r8, r9, lsl #3
10000620: e9d7 4a02 ldrd r4, sl, [r7, #8]
10000624: f000 fab4 bl 10000b90 <timer_time_us_64>
10000628: 42a0 cmp r0, r4
1000062a: eb71 010a sbcs.w r1, r1, sl
1000062e: dbb9 blt.n 100005a4 <alarm_pool_irq_handler+0x44>
10000630: f1ba 0f00 cmp.w sl, #0
10000634: f2c0 80c3 blt.w 100007be <alarm_pool_irq_handler+0x25e>
10000638: e9d7 3104 ldrd r3, r1, [r7, #16]
1000063c: 4a83 ldr r2, [pc, #524] @ (1000084c <alarm_pool_irq_handler+0x2ec>)
1000063e: 4293 cmp r3, r2
10000640: f000 80ed beq.w 1000081e <alarm_pool_irq_handler+0x2be>
10000644: 887a ldrh r2, [r7, #2]
10000646: f9b6 0008 ldrsh.w r0, [r6, #8]
1000064a: b292 uxth r2, r2
1000064c: ea42 4000 orr.w r0, r2, r0, lsl #16
10000650: 4798 blx r3
10000652: 4602 mov r2, r0
10000654: 460b mov r3, r1
10000656: ea52 0103 orrs.w r1, r2, r3
1000065a: f000 80b0 beq.w 100007be <alarm_pool_irq_handler+0x25e>
1000065e: 2b00 cmp r3, #0
10000660: f280 80d1 bge.w 10000806 <alarm_pool_irq_handler+0x2a6>
10000664: ebb4 0e02 subs.w lr, r4, r2
10000668: eb6a 0a03 sbc.w sl, sl, r3
1000066c: f938 3039 ldrsh.w r3, [r8, r9, lsl #3]
10000670: e9c7 ea02 strd lr, sl, [r7, #8]
10000674: 2b00 cmp r3, #0
10000676: db95 blt.n 100005a4 <alarm_pool_irq_handler+0x44>
10000678: 6971 ldr r1, [r6, #20]
1000067a: eb03 0243 add.w r2, r3, r3, lsl #1
1000067e: eb01 02c2 add.w r2, r1, r2, lsl #3
10000682: e9d2 7002 ldrd r7, r0, [r2, #8]
10000686: 45be cmp lr, r7
10000688: eb7a 0c00 sbcs.w ip, sl, r0
1000068c: ea4f 0243 mov.w r2, r3, lsl #1
10000690: db88 blt.n 100005a4 <alarm_pool_irq_handler+0x44>
10000692: 46b4 mov ip, r6
10000694: f82c 3f08 strh.w r3, [ip, #8]!
10000698: e006 b.n 100006a8 <alarm_pool_irq_handler+0x148>
1000069a: eb03 0043 add.w r0, r3, r3, lsl #1
1000069e: eb01 00c0 add.w r0, r1, r0, lsl #3
100006a2: 005a lsls r2, r3, #1
100006a4: e9d0 7002 ldrd r7, r0, [r0, #8]
100006a8: 45be cmp lr, r7
100006aa: 441a add r2, r3
100006ac: eb7a 0000 sbcs.w r0, sl, r0
100006b0: eb01 04c2 add.w r4, r1, r2, lsl #3
100006b4: db04 blt.n 100006c0 <alarm_pool_irq_handler+0x160>
100006b6: f931 3032 ldrsh.w r3, [r1, r2, lsl #3]
100006ba: 46a4 mov ip, r4
100006bc: 2b00 cmp r3, #0
100006be: daec bge.n 1000069a <alarm_pool_irq_handler+0x13a>
100006c0: f828 3039 strh.w r3, [r8, r9, lsl #3]
100006c4: 9b00 ldr r3, [sp, #0]
100006c6: f8ac 3000 strh.w r3, [ip]
100006ca: 88b3 ldrh r3, [r6, #4]
100006cc: 041c lsls r4, r3, #16
100006ce: f53f af6d bmi.w 100005ac <alarm_pool_irq_handler+0x4c>
100006d2: 6933 ldr r3, [r6, #16]
100006d4: f3ef 8210 mrs r2, PRIMASK
100006d8: b672 cpsid i
100006da: e8d3 0fcf ldaexb r0, [r3]
100006de: 2101 movs r1, #1
100006e0: 2800 cmp r0, #0
100006e2: d1fa bne.n 100006da <alarm_pool_irq_handler+0x17a>
100006e4: e8c3 1f40 strexb r0, r1, [r3]
100006e8: 2800 cmp r0, #0
100006ea: d1f6 bne.n 100006da <alarm_pool_irq_handler+0x17a>
100006ec: f3bf 8f5f dmb sy
100006f0: f64f 74ff movw r4, #65535 @ 0xffff
100006f4: 88b0 ldrh r0, [r6, #4]
100006f6: 2300 movs r3, #0
100006f8: 6931 ldr r1, [r6, #16]
100006fa: b200 sxth r0, r0
100006fc: 80b4 strh r4, [r6, #4]
100006fe: e8c1 3f8f stlb r3, [r1]
10000702: f382 8810 msr PRIMASK, r2
10000706: 4298 cmp r0, r3
10000708: f6ff af50 blt.w 100005ac <alarm_pool_irq_handler+0x4c>
1000070c: 4607 mov r7, r0
1000070e: 46a9 mov r9, r5
10000710: 6974 ldr r4, [r6, #20]
10000712: f106 0808 add.w r8, r6, #8
10000716: eb07 0e47 add.w lr, r7, r7, lsl #1
1000071a: eb04 03ce add.w r3, r4, lr, lsl #3
1000071e: e9d3 5002 ldrd r5, r0, [r3, #8]
10000722: f9b6 3008 ldrsh.w r3, [r6, #8]
10000726: 46c4 mov ip, r8
10000728: 2b00 cmp r3, #0
1000072a: db13 blt.n 10000754 <alarm_pool_irq_handler+0x1f4>
1000072c: 46b2 mov sl, r6
1000072e: 9700 str r7, [sp, #0]
10000730: e004 b.n 1000073c <alarm_pool_irq_handler+0x1dc>
10000732: f934 3036 ldrsh.w r3, [r4, r6, lsl #3]
10000736: 4694 mov ip, r2
10000738: 2b00 cmp r3, #0
1000073a: db09 blt.n 10000750 <alarm_pool_irq_handler+0x1f0>
1000073c: eb03 0643 add.w r6, r3, r3, lsl #1
10000740: eb04 02c6 add.w r2, r4, r6, lsl #3
10000744: e9d2 7102 ldrd r7, r1, [r2, #8]
10000748: 42bd cmp r5, r7
1000074a: eb70 0101 sbcs.w r1, r0, r1
1000074e: daf0 bge.n 10000732 <alarm_pool_irq_handler+0x1d2>
10000750: 4656 mov r6, sl
10000752: 9f00 ldr r7, [sp, #0]
10000754: f8ac 7000 strh.w r7, [ip]
10000758: f934 703e ldrsh.w r7, [r4, lr, lsl #3]
1000075c: f824 303e strh.w r3, [r4, lr, lsl #3]
10000760: 2f00 cmp r7, #0
10000762: dad8 bge.n 10000716 <alarm_pool_irq_handler+0x1b6>
10000764: 79b3 ldrb r3, [r6, #6]
10000766: 464d mov r5, r9
10000768: 2b00 cmp r3, #0
1000076a: f43f af23 beq.w 100005b4 <alarm_pool_irq_handler+0x54>
1000076e: 2300 movs r3, #0
10000770: 71b3 strb r3, [r6, #6]
10000772: f9b6 3008 ldrsh.w r3, [r6, #8]
10000776: f106 0808 add.w r8, r6, #8
1000077a: 1c58 adds r0, r3, #1
1000077c: d03d beq.n 100007fa <alarm_pool_irq_handler+0x29a>
1000077e: 461a mov r2, r3
10000780: 6977 ldr r7, [r6, #20]
10000782: e003 b.n 1000078c <alarm_pool_irq_handler+0x22c>
10000784: 4680 mov r8, r0
10000786: 1c59 adds r1, r3, #1
10000788: f43f af16 beq.w 100005b8 <alarm_pool_irq_handler+0x58>
1000078c: eb03 0143 add.w r1, r3, r3, lsl #1
10000790: eb07 00c1 add.w r0, r7, r1, lsl #3
10000794: f8b0 c002 ldrh.w ip, [r0, #2]
10000798: 461c mov r4, r3
1000079a: f41c 4f00 tst.w ip, #32768 @ 0x8000
1000079e: 469e mov lr, r3
100007a0: f937 3031 ldrsh.w r3, [r7, r1, lsl #3]
100007a4: d0ee beq.n 10000784 <alarm_pool_irq_handler+0x224>
100007a6: 4294 cmp r4, r2
100007a8: ed80 8b02 vstr d8, [r0, #8]
100007ac: d005 beq.n 100007ba <alarm_pool_irq_handler+0x25a>
100007ae: f8a8 3000 strh.w r3, [r8]
100007b2: 8932 ldrh r2, [r6, #8]
100007b4: f827 2031 strh.w r2, [r7, r1, lsl #3]
100007b8: 8134 strh r4, [r6, #8]
100007ba: 4672 mov r2, lr
100007bc: e7e3 b.n 10000786 <alarm_pool_irq_handler+0x226>
100007be: f838 3039 ldrh.w r3, [r8, r9, lsl #3]
100007c2: 8133 strh r3, [r6, #8]
100007c4: 6933 ldr r3, [r6, #16]
100007c6: f3ef 8210 mrs r2, PRIMASK
100007ca: b672 cpsid i
100007cc: e8d3 0fcf ldaexb r0, [r3]
100007d0: 2101 movs r1, #1
100007d2: 2800 cmp r0, #0
100007d4: d1fa bne.n 100007cc <alarm_pool_irq_handler+0x26c>
100007d6: e8c3 1f40 strexb r0, r1, [r3]
100007da: 2800 cmp r0, #0
100007dc: d1f6 bne.n 100007cc <alarm_pool_irq_handler+0x26c>
100007de: f3bf 8f5f dmb sy
100007e2: 8873 ldrh r3, [r6, #2]
100007e4: 6931 ldr r1, [r6, #16]
100007e6: f828 3039 strh.w r3, [r8, r9, lsl #3]
100007ea: 9b00 ldr r3, [sp, #0]
100007ec: 8073 strh r3, [r6, #2]
100007ee: 2300 movs r3, #0
100007f0: e8c1 3f8f stlb r3, [r1]
100007f4: f382 8810 msr PRIMASK, r2
100007f8: e6d4 b.n 100005a4 <alarm_pool_irq_handler+0x44>
100007fa: bf40 sev
100007fc: b005 add sp, #20
100007fe: ecbd 8b02 vpop {d8}
10000802: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc}
10000806: 4628 mov r0, r5
10000808: e9cd 2302 strd r2, r3, [sp, #8]
1000080c: f000 f9c0 bl 10000b90 <timer_time_us_64>
10000810: 9a02 ldr r2, [sp, #8]
10000812: 9b03 ldr r3, [sp, #12]
10000814: eb10 0e02 adds.w lr, r0, r2
10000818: eb43 0a01 adc.w sl, r3, r1
1000081c: e726 b.n 1000066c <alarm_pool_irq_handler+0x10c>
1000081e: 4608 mov r0, r1
10000820: 690b ldr r3, [r1, #16]
10000822: 9102 str r1, [sp, #8]
10000824: 4798 blx r3
10000826: 2800 cmp r0, #0
10000828: d0c9 beq.n 100007be <alarm_pool_irq_handler+0x25e>
1000082a: 9902 ldr r1, [sp, #8]
1000082c: e9d1 2300 ldrd r2, r3, [r1]
10000830: e711 b.n 10000656 <alarm_pool_irq_handler+0xf6>
10000832: bf00 nop
10000834: f3af 8000 nop.w
10000838: ffffffff .word 0xffffffff
1000083c: ffffffff .word 0xffffffff
10000840: 400b8000 .word 0x400b8000
10000844: 20000440 .word 0x20000440
10000848: 400b0000 .word 0x400b0000
1000084c: 10000561 .word 0x10000561
10000850 <runtime_init_default_alarm_pool>:
10000850: e92d 4ff8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, sl, fp, lr}
10000854: 4c36 ldr r4, [pc, #216] @ (10000930 <runtime_init_default_alarm_pool+0xe0>)
10000856: 6925 ldr r5, [r4, #16]
10000858: b12d cbz r5, 10000866 <runtime_init_default_alarm_pool+0x16>
1000085a: e8bd 4ff8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, sl, fp, lr}
1000085e: 210a movs r1, #10
10000860: 4834 ldr r0, [pc, #208] @ (10000934 <runtime_init_default_alarm_pool+0xe4>)
10000862: f7ff be33 b.w 100004cc <lock_init>
10000866: f8df 80e4 ldr.w r8, [pc, #228] @ 1000094c <runtime_init_default_alarm_pool+0xfc>
1000086a: 2103 movs r1, #3
1000086c: 4640 mov r0, r8
1000086e: f000 f97d bl 10000b6c <timer_hardware_alarm_claim>
10000872: 2603 movs r6, #3
10000874: f8c4 800c str.w r8, [r4, #12]
10000878: f7ff fda2 bl 100003c0 <next_striped_spin_lock_num>
1000087c: f04f 4c50 mov.w ip, #3489660928 @ 0xd0000000
10000880: 4b2d ldr r3, [pc, #180] @ (10000938 <runtime_init_default_alarm_pool+0xe8>)
10000882: 7026 strb r6, [r4, #0]
10000884: 4403 add r3, r0
10000886: 6123 str r3, [r4, #16]
10000888: f8dc 3000 ldr.w r3, [ip]
1000088c: 210f movs r1, #15
1000088e: 7063 strb r3, [r4, #1]
10000890: 6963 ldr r3, [r4, #20]
10000892: 8061 strh r1, [r4, #2]
10000894: 831d strh r5, [r3, #24]
10000896: f04f 0504 mov.w r5, #4
1000089a: f8a3 5078 strh.w r5, [r3, #120] @ 0x78
1000089e: f04f 0505 mov.w r5, #5
100008a2: f8a3 5090 strh.w r5, [r3, #144] @ 0x90
100008a6: f04f 0506 mov.w r5, #6
100008aa: f8a3 50a8 strh.w r5, [r3, #168] @ 0xa8
100008ae: f04f 0507 mov.w r5, #7
100008b2: 210e movs r1, #14
100008b4: f64f 72ff movw r2, #65535 @ 0xffff
100008b8: 2708 movs r7, #8
100008ba: f04f 0e0a mov.w lr, #10
100008be: f8a3 50c0 strh.w r5, [r3, #192] @ 0xc0
100008c2: f04f 0901 mov.w r9, #1
100008c6: f04f 0c0c mov.w ip, #12
100008ca: f04f 0b02 mov.w fp, #2
100008ce: f04f 0a09 mov.w sl, #9
100008d2: 200d movs r0, #13
100008d4: f04f 050b mov.w r5, #11
100008d8: f8a3 1168 strh.w r1, [r3, #360] @ 0x168
100008dc: 4917 ldr r1, [pc, #92] @ (1000093c <runtime_init_default_alarm_pool+0xec>)
100008de: 80a2 strh r2, [r4, #4]
100008e0: f8a3 e108 strh.w lr, [r3, #264] @ 0x108
100008e4: 60a1 str r1, [r4, #8]
100008e6: f8a3 b048 strh.w fp, [r3, #72] @ 0x48
100008ea: f8a3 a0f0 strh.w sl, [r3, #240] @ 0xf0
100008ee: f8a3 5120 strh.w r5, [r3, #288] @ 0x120
100008f2: f8a3 c138 strh.w ip, [r3, #312] @ 0x138
100008f6: f8a3 0150 strh.w r0, [r3, #336] @ 0x150
100008fa: f8a3 9030 strh.w r9, [r3, #48] @ 0x30
100008fe: f8a3 6060 strh.w r6, [r3, #96] @ 0x60
10000902: f8a3 70d8 strh.w r7, [r3, #216] @ 0xd8
10000906: 801a strh r2, [r3, #0]
10000908: 4b0d ldr r3, [pc, #52] @ (10000940 <runtime_init_default_alarm_pool+0xf0>)
1000090a: 4630 mov r0, r6
1000090c: f8c8 7020 str.w r7, [r8, #32]
10000910: 490c ldr r1, [pc, #48] @ (10000944 <runtime_init_default_alarm_pool+0xf4>)
10000912: 60dc str r4, [r3, #12]
10000914: f7ff fdaa bl 1000046c <irq_set_exclusive_handler>
10000918: 4649 mov r1, r9
1000091a: 4630 mov r0, r6
1000091c: f7ff fd90 bl 10000440 <irq_set_enabled>
10000920: 4b09 ldr r3, [pc, #36] @ (10000948 <runtime_init_default_alarm_pool+0xf8>)
10000922: 210a movs r1, #10
10000924: 641f str r7, [r3, #64] @ 0x40
10000926: 4803 ldr r0, [pc, #12] @ (10000934 <runtime_init_default_alarm_pool+0xe4>)
10000928: e8bd 4ff8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, sl, fp, lr}
1000092c: f7ff bdce b.w 100004cc <lock_init>
10000930: 2000022c .word 0x2000022c
10000934: 20000460 .word 0x20000460
10000938: 200003d0 .word 0x200003d0
1000093c: 0010ffff .word 0x0010ffff
10000940: 20000440 .word 0x20000440
10000944: 10000561 .word 0x10000561
10000948: 400b2000 .word 0x400b2000
1000094c: 400b0000 .word 0x400b0000
10000950 <alarm_pool_add_alarm_at_force_in_context>:
10000950: 4601 mov r1, r0
10000952: b5f0 push {r4, r5, r6, r7, lr}
10000954: 6900 ldr r0, [r0, #16]
10000956: f3ef 8710 mrs r7, PRIMASK
1000095a: b672 cpsid i
1000095c: e8d0 5fcf ldaexb r5, [r0]
10000960: 2401 movs r4, #1
10000962: 2d00 cmp r5, #0
10000964: d1fa bne.n 1000095c <alarm_pool_add_alarm_at_force_in_context+0xc>
10000966: e8c0 4f45 strexb r5, r4, [r0]
1000096a: 2d00 cmp r5, #0
1000096c: d1f6 bne.n 1000095c <alarm_pool_add_alarm_at_force_in_context+0xc>
1000096e: f3bf 8f5f dmb sy
10000972: f9b1 e002 ldrsh.w lr, [r1, #2]
10000976: 694c ldr r4, [r1, #20]
10000978: eb0e 0c4e add.w ip, lr, lr, lsl #1
1000097c: f1be 0f00 cmp.w lr, #0
10000980: ea4f 05cc mov.w r5, ip, lsl #3
10000984: 6908 ldr r0, [r1, #16]
10000986: eb04 0ccc add.w ip, r4, ip, lsl #3
1000098a: db3c blt.n 10000a06 <alarm_pool_add_alarm_at_force_in_context+0xb6>
1000098c: 5b66 ldrh r6, [r4, r5]
1000098e: 804e strh r6, [r1, #2]
10000990: 2600 movs r6, #0
10000992: e8c0 6f8f stlb r6, [r0]
10000996: f387 8810 msr PRIMASK, r7
1000099a: f8bc 0002 ldrh.w r0, [ip, #2]
1000099e: e9cc 2302 strd r2, r3, [ip, #8]
100009a2: 3001 adds r0, #1
100009a4: f3c0 000e ubfx r0, r0, #0, #15
100009a8: 2801 cmp r0, #1
100009aa: bf38 it cc
100009ac: 2001 movcc r0, #1
100009ae: 9b05 ldr r3, [sp, #20]
100009b0: f8ac 0002 strh.w r0, [ip, #2]
100009b4: f8cc 3010 str.w r3, [ip, #16]
100009b8: 9b06 ldr r3, [sp, #24]
100009ba: ea40 400e orr.w r0, r0, lr, lsl #16
100009be: f8cc 3014 str.w r3, [ip, #20]
100009c2: 690b ldr r3, [r1, #16]
100009c4: f3ef 8210 mrs r2, PRIMASK
100009c8: b672 cpsid i
100009ca: e8d3 cfcf ldaexb ip, [r3]
100009ce: 2701 movs r7, #1
100009d0: f1bc 0f00 cmp.w ip, #0
100009d4: d1f9 bne.n 100009ca <alarm_pool_add_alarm_at_force_in_context+0x7a>
100009d6: e8c3 7f4c strexb ip, r7, [r3]
100009da: f1bc 0f00 cmp.w ip, #0
100009de: d1f4 bne.n 100009ca <alarm_pool_add_alarm_at_force_in_context+0x7a>
100009e0: f3bf 8f5f dmb sy
100009e4: 888b ldrh r3, [r1, #4]
100009e6: 5363 strh r3, [r4, r5]
100009e8: f8a1 e004 strh.w lr, [r1, #4]
100009ec: 690b ldr r3, [r1, #16]
100009ee: e8c3 6f8f stlb r6, [r3]
100009f2: f382 8810 msr PRIMASK, r2
100009f6: 2201 movs r2, #1
100009f8: 68cb ldr r3, [r1, #12]
100009fa: 7809 ldrb r1, [r1, #0]
100009fc: f503 5301 add.w r3, r3, #8256 @ 0x2040
10000a00: 408a lsls r2, r1
10000a02: 605a str r2, [r3, #4]
10000a04: bdf0 pop {r4, r5, r6, r7, pc}
10000a06: 2300 movs r3, #0
10000a08: e8c0 3f8f stlb r3, [r0]
10000a0c: f387 8810 msr PRIMASK, r7
10000a10: f04f 30ff mov.w r0, #4294967295
10000a14: bdf0 pop {r4, r5, r6, r7, pc}
10000a16: bf00 nop
10000a18 <alarm_pool_cancel_alarm>:
10000a18: 4603 mov r3, r0
10000a1a: 8940 ldrh r0, [r0, #10]
10000a1c: ebb0 4f21 cmp.w r0, r1, asr #16
10000a20: dd37 ble.n 10000a92 <alarm_pool_cancel_alarm+0x7a>
10000a22: 6958 ldr r0, [r3, #20]
10000a24: 140a asrs r2, r1, #16
10000a26: eb02 0242 add.w r2, r2, r2, lsl #1
10000a2a: b510 push {r4, lr}
10000a2c: eb00 00c2 add.w r0, r0, r2, lsl #3
10000a30: 691c ldr r4, [r3, #16]
10000a32: f3ef 8c10 mrs ip, PRIMASK
10000a36: b672 cpsid i
10000a38: e8d4 efcf ldaexb lr, [r4]
10000a3c: 2201 movs r2, #1
10000a3e: f1be 0f00 cmp.w lr, #0
10000a42: d1f9 bne.n 10000a38 <alarm_pool_cancel_alarm+0x20>
10000a44: e8c4 2f4e strexb lr, r2, [r4]
10000a48: f1be 0f00 cmp.w lr, #0
10000a4c: d1f4 bne.n 10000a38 <alarm_pool_cancel_alarm+0x20>
10000a4e: f3bf 8f5f dmb sy
10000a52: 8842 ldrh r2, [r0, #2]
10000a54: b289 uxth r1, r1
10000a56: b292 uxth r2, r2
10000a58: 428a cmp r2, r1
10000a5a: d007 beq.n 10000a6c <alarm_pool_cancel_alarm+0x54>
10000a5c: 2200 movs r2, #0
10000a5e: 691b ldr r3, [r3, #16]
10000a60: e8c3 2f8f stlb r2, [r3]
10000a64: f38c 8810 msr PRIMASK, ip
10000a68: 2000 movs r0, #0
10000a6a: bd10 pop {r4, pc}
10000a6c: f442 4200 orr.w r2, r2, #32768 @ 0x8000
10000a70: 8042 strh r2, [r0, #2]
10000a72: 2101 movs r1, #1
10000a74: 2200 movs r2, #0
10000a76: 6918 ldr r0, [r3, #16]
10000a78: 7199 strb r1, [r3, #6]
10000a7a: e8c0 2f8f stlb r2, [r0]
10000a7e: f38c 8810 msr PRIMASK, ip
10000a82: 781c ldrb r4, [r3, #0]
10000a84: 68da ldr r2, [r3, #12]
10000a86: 4608 mov r0, r1
10000a88: f502 5301 add.w r3, r2, #8256 @ 0x2040
10000a8c: 40a1 lsls r1, r4
10000a8e: 6059 str r1, [r3, #4]
10000a90: bd10 pop {r4, pc}
10000a92: 2000 movs r0, #0
10000a94: 4770 bx lr
10000a96: bf00 nop
10000a98 <best_effort_wfe_or_timeout>:
10000a98: e92d 43f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, lr}
10000a9c: 4606 mov r6, r0
10000a9e: 460d mov r5, r1
10000aa0: b083 sub sp, #12
10000aa2: f3ef 8405 mrs r4, IPSR
10000aa6: b2e4 uxtb r4, r4
10000aa8: b13c cbz r4, 10000aba <best_effort_wfe_or_timeout+0x22>
10000aaa: 4b2d ldr r3, [pc, #180] @ (10000b60 <best_effort_wfe_or_timeout+0xc8>)
10000aac: 6a5a ldr r2, [r3, #36] @ 0x24
10000aae: 42aa cmp r2, r5
10000ab0: d21c bcs.n 10000aec <best_effort_wfe_or_timeout+0x54>
10000ab2: 2000 movs r0, #0
10000ab4: b003 add sp, #12
10000ab6: e8bd 83f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, pc}
10000aba: 4f2a ldr r7, [pc, #168] @ (10000b64 <best_effort_wfe_or_timeout+0xcc>)
10000abc: f8d7 900c ldr.w r9, [r7, #12]
10000ac0: f897 8000 ldrb.w r8, [r7]
10000ac4: 4648 mov r0, r9
10000ac6: f000 f863 bl 10000b90 <timer_time_us_64>
10000aca: f108 0804 add.w r8, r8, #4
10000ace: f859 3028 ldr.w r3, [r9, r8, lsl #2]
10000ad2: 1a1b subs r3, r3, r0
10000ad4: 1a30 subs r0, r6, r0
10000ad6: eb65 0101 sbc.w r1, r5, r1
10000ada: 4298 cmp r0, r3
10000adc: f171 0100 sbcs.w r1, r1, #0
10000ae0: db10 blt.n 10000b04 <best_effort_wfe_or_timeout+0x6c>
10000ae2: bf20 wfe
10000ae4: 4b1e ldr r3, [pc, #120] @ (10000b60 <best_effort_wfe_or_timeout+0xc8>)
10000ae6: 6a5a ldr r2, [r3, #36] @ 0x24
10000ae8: 42aa cmp r2, r5
10000aea: d3e2 bcc.n 10000ab2 <best_effort_wfe_or_timeout+0x1a>
10000aec: bf14 ite ne
10000aee: 2401 movne r4, #1
10000af0: 2400 moveq r4, #0
10000af2: 6a9b ldr r3, [r3, #40] @ 0x28
10000af4: 42b3 cmp r3, r6
10000af6: bf34 ite cc
10000af8: 4620 movcc r0, r4
10000afa: f044 0001 orrcs.w r0, r4, #1
10000afe: b003 add sp, #12
10000b00: e8bd 83f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, pc}
10000b04: f000 f84c bl 10000ba0 <time_us_64>
10000b08: 4286 cmp r6, r0
10000b0a: eb65 0101 sbc.w r1, r5, r1
10000b0e: 2900 cmp r1, #0
10000b10: db14 blt.n 10000b3c <best_effort_wfe_or_timeout+0xa4>
10000b12: 4b15 ldr r3, [pc, #84] @ (10000b68 <best_effort_wfe_or_timeout+0xd0>)
10000b14: 4638 mov r0, r7
10000b16: e9cd 3400 strd r3, r4, [sp]
10000b1a: 4632 mov r2, r6
10000b1c: 462b mov r3, r5
10000b1e: f7ff ff17 bl 10000950 <alarm_pool_add_alarm_at_force_in_context>
10000b22: 1e01 subs r1, r0, #0
10000b24: dd0a ble.n 10000b3c <best_effort_wfe_or_timeout+0xa4>
10000b26: 4b0e ldr r3, [pc, #56] @ (10000b60 <best_effort_wfe_or_timeout+0xc8>)
10000b28: 6a5a ldr r2, [r3, #36] @ 0x24
10000b2a: 42aa cmp r2, r5
10000b2c: d316 bcc.n 10000b5c <best_effort_wfe_or_timeout+0xc4>
10000b2e: 6a9b ldr r3, [r3, #40] @ 0x28
10000b30: 42b3 cmp r3, r6
10000b32: d311 bcc.n 10000b58 <best_effort_wfe_or_timeout+0xc0>
10000b34: 480b ldr r0, [pc, #44] @ (10000b64 <best_effort_wfe_or_timeout+0xcc>)
10000b36: f7ff ff6f bl 10000a18 <alarm_pool_cancel_alarm>
10000b3a: e7b6 b.n 10000aaa <best_effort_wfe_or_timeout+0x12>
10000b3c: 4b08 ldr r3, [pc, #32] @ (10000b60 <best_effort_wfe_or_timeout+0xc8>)
10000b3e: 6a5c ldr r4, [r3, #36] @ 0x24
10000b40: 42ac cmp r4, r5
10000b42: d3b6 bcc.n 10000ab2 <best_effort_wfe_or_timeout+0x1a>
10000b44: 1b64 subs r4, r4, r5
10000b46: bf18 it ne
10000b48: 2401 movne r4, #1
10000b4a: 6a9b ldr r3, [r3, #40] @ 0x28
10000b4c: 42b3 cmp r3, r6
10000b4e: bf34 ite cc
10000b50: 4620 movcc r0, r4
10000b52: f044 0001 orrcs.w r0, r4, #1
10000b56: e7ad b.n 10000ab4 <best_effort_wfe_or_timeout+0x1c>
10000b58: 42aa cmp r2, r5
10000b5a: d1eb bne.n 10000b34 <best_effort_wfe_or_timeout+0x9c>
10000b5c: bf20 wfe
10000b5e: e7e9 b.n 10000b34 <best_effort_wfe_or_timeout+0x9c>
10000b60: 400b0000 .word 0x400b0000
10000b64: 2000022c .word 0x2000022c
10000b68: 10000525 .word 0x10000525
10000b6c <timer_hardware_alarm_claim>:
10000b6c: b410 push {r4}
10000b6e: 4b05 ldr r3, [pc, #20] @ (10000b84 <timer_hardware_alarm_claim+0x18>)
10000b70: 4c05 ldr r4, [pc, #20] @ (10000b88 <timer_hardware_alarm_claim+0x1c>)
10000b72: 4a06 ldr r2, [pc, #24] @ (10000b8c <timer_hardware_alarm_claim+0x20>)
10000b74: 42a0 cmp r0, r4
10000b76: bf14 ite ne
10000b78: 4618 movne r0, r3
10000b7a: 1c58 addeq r0, r3, #1
10000b7c: f85d 4b04 ldr.w r4, [sp], #4
10000b80: f7ff bbf2 b.w 10000368 <hw_claim_or_assert>
10000b84: 200003f0 .word 0x200003f0
10000b88: 400b8000 .word 0x400b8000
10000b8c: 10001610 .word 0x10001610
10000b90 <timer_time_us_64>:
10000b90: 4603 mov r3, r0
10000b92: 6a41 ldr r1, [r0, #36] @ 0x24
10000b94: 460a mov r2, r1
10000b96: 6a98 ldr r0, [r3, #40] @ 0x28
10000b98: 6a59 ldr r1, [r3, #36] @ 0x24
10000b9a: 428a cmp r2, r1
10000b9c: d1fa bne.n 10000b94 <timer_time_us_64+0x4>
10000b9e: 4770 bx lr
10000ba0 <time_us_64>:
10000ba0: 4b03 ldr r3, [pc, #12] @ (10000bb0 <time_us_64+0x10>)
10000ba2: 6a59 ldr r1, [r3, #36] @ 0x24
10000ba4: 460a mov r2, r1
10000ba6: 6a98 ldr r0, [r3, #40] @ 0x28
10000ba8: 6a59 ldr r1, [r3, #36] @ 0x24
10000baa: 4291 cmp r1, r2
10000bac: d1fa bne.n 10000ba4 <time_us_64+0x4>
10000bae: 4770 bx lr
10000bb0: 400b0000 .word 0x400b0000
10000bb4 <busy_wait_us>:
10000bb4: b430 push {r4, r5}
10000bb6: 4a15 ldr r2, [pc, #84] @ (10000c0c <busy_wait_us+0x58>)
10000bb8: 6a53 ldr r3, [r2, #36] @ 0x24
10000bba: 469c mov ip, r3
10000bbc: 6a94 ldr r4, [r2, #40] @ 0x28
10000bbe: 6a53 ldr r3, [r2, #36] @ 0x24
10000bc0: 4563 cmp r3, ip
10000bc2: d1fa bne.n 10000bba <busy_wait_us+0x6>
10000bc4: 1902 adds r2, r0, r4
10000bc6: 4159 adcs r1, r3
10000bc8: f04f 0500 mov.w r5, #0
10000bcc: bf28 it cs
10000bce: 2501 movcs r5, #1
10000bd0: 4b0e ldr r3, [pc, #56] @ (10000c0c <busy_wait_us+0x58>)
10000bd2: 6a5b ldr r3, [r3, #36] @ 0x24
10000bd4: b1b5 cbz r5, 10000c04 <busy_wait_us+0x50>
10000bd6: 1c5a adds r2, r3, #1
10000bd8: bf08 it eq
10000bda: 461a moveq r2, r3
10000bdc: d008 beq.n 10000bf0 <busy_wait_us+0x3c>
10000bde: f04f 31ff mov.w r1, #4294967295
10000be2: 460a mov r2, r1
10000be4: 4809 ldr r0, [pc, #36] @ (10000c0c <busy_wait_us+0x58>)
10000be6: 6a43 ldr r3, [r0, #36] @ 0x24
10000be8: 428b cmp r3, r1
10000bea: d3fc bcc.n 10000be6 <busy_wait_us+0x32>
10000bec: 428b cmp r3, r1
10000bee: d107 bne.n 10000c00 <busy_wait_us+0x4c>
10000bf0: 4906 ldr r1, [pc, #24] @ (10000c0c <busy_wait_us+0x58>)
10000bf2: e002 b.n 10000bfa <busy_wait_us+0x46>
10000bf4: 6a48 ldr r0, [r1, #36] @ 0x24
10000bf6: 4298 cmp r0, r3
10000bf8: d102 bne.n 10000c00 <busy_wait_us+0x4c>
10000bfa: 6a88 ldr r0, [r1, #40] @ 0x28
10000bfc: 4290 cmp r0, r2
10000bfe: d3f9 bcc.n 10000bf4 <busy_wait_us+0x40>
10000c00: bc30 pop {r4, r5}
10000c02: 4770 bx lr
10000c04: 4299 cmp r1, r3
10000c06: d8ed bhi.n 10000be4 <busy_wait_us+0x30>
10000c08: e7f0 b.n 10000bec <busy_wait_us+0x38>
10000c0a: bf00 nop
10000c0c: 400b0000 .word 0x400b0000
10000c10 <uart_init>:
10000c10: b5f8 push {r3, r4, r5, r6, r7, lr}
10000c12: 4605 mov r5, r0
10000c14: 2006 movs r0, #6
10000c16: 460e mov r6, r1
10000c18: f000 f8e4 bl 10000de4 <clock_get_hz>
10000c1c: 2800 cmp r0, #0
10000c1e: d042 beq.n 10000ca6 <uart_init+0x96>
10000c20: 4a35 ldr r2, [pc, #212] @ (10000cf8 <uart_init+0xe8>)
10000c22: 4836 ldr r0, [pc, #216] @ (10000cfc <uart_init+0xec>)
10000c24: 4295 cmp r5, r2
10000c26: bf14 ite ne
10000c28: f04f 6280 movne.w r2, #67108864 @ 0x4000000
10000c2c: f04f 6200 moveq.w r2, #134217728 @ 0x8000000
10000c30: 4b33 ldr r3, [pc, #204] @ (10000d00 <uart_init+0xf0>)
10000c32: 4934 ldr r1, [pc, #208] @ (10000d04 <uart_init+0xf4>)
10000c34: 6002 str r2, [r0, #0]
10000c36: 601a str r2, [r3, #0]
10000c38: 688c ldr r4, [r1, #8]
10000c3a: ea32 0404 bics.w r4, r2, r4
10000c3e: d1fb bne.n 10000c38 <uart_init+0x28>
10000c40: 4b2d ldr r3, [pc, #180] @ (10000cf8 <uart_init+0xe8>)
10000c42: f44f 7180 mov.w r1, #256 @ 0x100
10000c46: 1aeb subs r3, r5, r3
10000c48: fab3 f383 clz r3, r3
10000c4c: 4a2e ldr r2, [pc, #184] @ (10000d08 <uart_init+0xf8>)
10000c4e: 095b lsrs r3, r3, #5
10000c50: 2006 movs r0, #6
10000c52: f822 1013 strh.w r1, [r2, r3, lsl #1]
10000c56: f000 f8c5 bl 10000de4 <clock_get_hz>
10000c5a: 00c3 lsls r3, r0, #3
10000c5c: fbb3 f3f6 udiv r3, r3, r6
10000c60: 3301 adds r3, #1
10000c62: 09da lsrs r2, r3, #7
10000c64: d120 bne.n 10000ca8 <uart_init+0x98>
10000c66: 2640 movs r6, #64 @ 0x40
10000c68: 2101 movs r1, #1
10000c6a: 6269 str r1, [r5, #36] @ 0x24
10000c6c: 62aa str r2, [r5, #40] @ 0x28
10000c6e: 6b2f ldr r7, [r5, #48] @ 0x30
10000c70: 07fb lsls r3, r7, #31
10000c72: d422 bmi.n 10000cba <uart_init+0xaa>
10000c74: 462b mov r3, r5
10000c76: 2200 movs r2, #0
10000c78: f853 1f2c ldr.w r1, [r3, #44]!
10000c7c: 2006 movs r0, #6
10000c7e: f503 5480 add.w r4, r3, #4096 @ 0x1000
10000c82: 6022 str r2, [r4, #0]
10000c84: 632f str r7, [r5, #48] @ 0x30
10000c86: f000 f8ad bl 10000de4 <clock_get_hz>
10000c8a: f240 3101 movw r1, #769 @ 0x301
10000c8e: 2203 movs r2, #3
10000c90: 0080 lsls r0, r0, #2
10000c92: fbb0 f0f6 udiv r0, r0, r6
10000c96: 6aeb ldr r3, [r5, #44] @ 0x2c
10000c98: f083 0370 eor.w r3, r3, #112 @ 0x70
10000c9c: f003 037e and.w r3, r3, #126 @ 0x7e
10000ca0: 6023 str r3, [r4, #0]
10000ca2: 6329 str r1, [r5, #48] @ 0x30
10000ca4: 64aa str r2, [r5, #72] @ 0x48
10000ca6: bdf8 pop {r3, r4, r5, r6, r7, pc}
10000ca8: f64f 71fe movw r1, #65534 @ 0xfffe
10000cac: 428a cmp r2, r1
10000cae: d91b bls.n 10000ce8 <uart_init+0xd8>
10000cb0: 4622 mov r2, r4
10000cb2: f64f 71ff movw r1, #65535 @ 0xffff
10000cb6: 4e15 ldr r6, [pc, #84] @ (10000d0c <uart_init+0xfc>)
10000cb8: e7d7 b.n 10000c6a <uart_init+0x5a>
10000cba: f240 3201 movw r2, #769 @ 0x301
10000cbe: f505 5340 add.w r3, r5, #12288 @ 0x3000
10000cc2: 631a str r2, [r3, #48] @ 0x30
10000cc4: 6a6b ldr r3, [r5, #36] @ 0x24
10000cc6: 6aac ldr r4, [r5, #40] @ 0x28
10000cc8: 2006 movs r0, #6
10000cca: eb04 1483 add.w r4, r4, r3, lsl #6
10000cce: f000 f889 bl 10000de4 <clock_get_hz>
10000cd2: 4b0f ldr r3, [pc, #60] @ (10000d10 <uart_init+0x100>)
10000cd4: 02a4 lsls r4, r4, #10
10000cd6: fba3 2300 umull r2, r3, r3, r0
10000cda: 0adb lsrs r3, r3, #11
10000cdc: 2100 movs r1, #0
10000cde: fbb4 f0f3 udiv r0, r4, r3
10000ce2: f7ff ff67 bl 10000bb4 <busy_wait_us>
10000ce6: e7c5 b.n 10000c74 <uart_init+0x64>
10000ce8: f3c3 0345 ubfx r3, r3, #1, #6
10000cec: 4611 mov r1, r2
10000cee: eb03 1682 add.w r6, r3, r2, lsl #6
10000cf2: 461a mov r2, r3
10000cf4: e7b9 b.n 10000c6a <uart_init+0x5a>
10000cf6: bf00 nop
10000cf8: 40078000 .word 0x40078000
10000cfc: 40022000 .word 0x40022000
10000d00: 40023000 .word 0x40023000
10000d04: 40020000 .word 0x40020000
10000d08: 20000464 .word 0x20000464
10000d0c: 003fffc0 .word 0x003fffc0
10000d10: 8f2b7b75 .word 0x8f2b7b75
10000d14 <clock_configure_undivided>:
10000d14: eb00 0c40 add.w ip, r0, r0, lsl #1
10000d18: ea4f 0c8c mov.w ip, ip, lsl #2
10000d1c: f10c 4c80 add.w ip, ip, #1073741824 @ 0x40000000
10000d20: f50c 3c80 add.w ip, ip, #65536 @ 0x10000
10000d24: b5f0 push {r4, r5, r6, r7, lr}
10000d26: 4616 mov r6, r2
10000d28: f8dc 2004 ldr.w r2, [ip, #4]
10000d2c: 1f05 subs r5, r0, #4
10000d2e: f5b2 3f80 cmp.w r2, #65536 @ 0x10000
10000d32: bf38 it cc
10000d34: f44f 3280 movcc.w r2, #65536 @ 0x10000
10000d38: b2ed uxtb r5, r5
10000d3a: bf38 it cc
10000d3c: f8cc 2004 strcc.w r2, [ip, #4]
10000d40: 2d01 cmp r5, #1
10000d42: d92a bls.n 10000d9a <clock_configure_undivided+0x86>
10000d44: f44f 6700 mov.w r7, #2048 @ 0x800
10000d48: 4c25 ldr r4, [pc, #148] @ (10000de0 <clock_configure_undivided+0xcc>)
10000d4a: f50c 5240 add.w r2, ip, #12288 @ 0x3000
10000d4e: 6017 str r7, [r2, #0]
10000d50: f854 2020 ldr.w r2, [r4, r0, lsl #2]
10000d54: b9b2 cbnz r2, 10000d84 <clock_configure_undivided+0x70>
10000d56: f8dc 2000 ldr.w r2, [ip]
10000d5a: 2d01 cmp r5, #1
10000d5c: ea82 1246 eor.w r2, r2, r6, lsl #5
10000d60: f002 02e0 and.w r2, r2, #224 @ 0xe0
10000d64: f50c 5680 add.w r6, ip, #4096 @ 0x1000
10000d68: 6032 str r2, [r6, #0]
10000d6a: d92a bls.n 10000dc2 <clock_configure_undivided+0xae>
10000d6c: f44f 6100 mov.w r1, #2048 @ 0x800
10000d70: f844 3020 str.w r3, [r4, r0, lsl #2]
10000d74: f44f 3380 mov.w r3, #65536 @ 0x10000
10000d78: f50c 5200 add.w r2, ip, #8192 @ 0x2000
10000d7c: 6011 str r1, [r2, #0]
10000d7e: f8cc 3004 str.w r3, [ip, #4]
10000d82: bdf0 pop {r4, r5, r6, r7, pc}
10000d84: 6967 ldr r7, [r4, #20]
10000d86: fbb7 fef2 udiv lr, r7, r2
10000d8a: f10e 0e01 add.w lr, lr, #1
10000d8e: eb0e 0e4e add.w lr, lr, lr, lsl #1
10000d92: f1be 0e03 subs.w lr, lr, #3
10000d96: d2fc bcs.n 10000d92 <clock_configure_undivided+0x7e>
10000d98: e7dd b.n 10000d56 <clock_configure_undivided+0x42>
10000d9a: 2901 cmp r1, #1
10000d9c: d1d2 bne.n 10000d44 <clock_configure_undivided+0x30>
10000d9e: 2403 movs r4, #3
10000da0: f50c 5240 add.w r2, ip, #12288 @ 0x3000
10000da4: 6014 str r4, [r2, #0]
10000da6: f8dc 2008 ldr.w r2, [ip, #8]
10000daa: 07d2 lsls r2, r2, #31
10000dac: d5fb bpl.n 10000da6 <clock_configure_undivided+0x92>
10000dae: f8dc 2000 ldr.w r2, [ip]
10000db2: 4c0b ldr r4, [pc, #44] @ (10000de0 <clock_configure_undivided+0xcc>)
10000db4: ea82 1246 eor.w r2, r2, r6, lsl #5
10000db8: f002 02e0 and.w r2, r2, #224 @ 0xe0
10000dbc: f50c 5680 add.w r6, ip, #4096 @ 0x1000
10000dc0: 6032 str r2, [r6, #0]
10000dc2: 2201 movs r2, #1
10000dc4: f8dc 5000 ldr.w r5, [ip]
10000dc8: 404d eors r5, r1
10000dca: f005 0503 and.w r5, r5, #3
10000dce: 6035 str r5, [r6, #0]
10000dd0: fa02 f101 lsl.w r1, r2, r1
10000dd4: f8dc 2008 ldr.w r2, [ip, #8]
10000dd8: 420a tst r2, r1
10000dda: d0fb beq.n 10000dd4 <clock_configure_undivided+0xc0>
10000ddc: e7c6 b.n 10000d6c <clock_configure_undivided+0x58>
10000dde: bf00 nop
10000de0: 200003f4 .word 0x200003f4
10000de4 <clock_get_hz>:
10000de4: 4b01 ldr r3, [pc, #4] @ (10000dec <clock_get_hz+0x8>)
10000de6: f853 0020 ldr.w r0, [r3, r0, lsl #2]
10000dea: 4770 bx lr
10000dec: 200003f4 .word 0x200003f4
10000df0 <pll_init>:
10000df0: b470 push {r4, r5, r6}
10000df2: 9d03 ldr r5, [sp, #12]
10000df4: 6804 ldr r4, [r0, #0]
10000df6: 032d lsls r5, r5, #12
10000df8: ea45 4503 orr.w r5, r5, r3, lsl #16
10000dfc: 4b1b ldr r3, [pc, #108] @ (10000e6c <pll_init+0x7c>)
10000dfe: 2c00 cmp r4, #0
10000e00: fbb3 f3f1 udiv r3, r3, r1
10000e04: fbb2 f6f3 udiv r6, r2, r3
10000e08: db1f blt.n 10000e4a <pll_init+0x5a>
10000e0a: 4a19 ldr r2, [pc, #100] @ (10000e70 <pll_init+0x80>)
10000e0c: 4b19 ldr r3, [pc, #100] @ (10000e74 <pll_init+0x84>)
10000e0e: 4290 cmp r0, r2
10000e10: bf14 ite ne
10000e12: f44f 4280 movne.w r2, #16384 @ 0x4000
10000e16: f44f 4200 moveq.w r2, #32768 @ 0x8000
10000e1a: 4c17 ldr r4, [pc, #92] @ (10000e78 <pll_init+0x88>)
10000e1c: 601a str r2, [r3, #0]
10000e1e: f503 5380 add.w r3, r3, #4096 @ 0x1000
10000e22: 601a str r2, [r3, #0]
10000e24: 68a3 ldr r3, [r4, #8]
10000e26: ea32 0303 bics.w r3, r2, r3
10000e2a: d1fb bne.n 10000e24 <pll_init+0x34>
10000e2c: 2221 movs r2, #33 @ 0x21
10000e2e: f500 5340 add.w r3, r0, #12288 @ 0x3000
10000e32: 3304 adds r3, #4
10000e34: 6001 str r1, [r0, #0]
10000e36: 6086 str r6, [r0, #8]
10000e38: 601a str r2, [r3, #0]
10000e3a: 6802 ldr r2, [r0, #0]
10000e3c: 2a00 cmp r2, #0
10000e3e: dafc bge.n 10000e3a <pll_init+0x4a>
10000e40: 2208 movs r2, #8
10000e42: 60c5 str r5, [r0, #12]
10000e44: 601a str r2, [r3, #0]
10000e46: bc70 pop {r4, r5, r6}
10000e48: 4770 bx lr
10000e4a: 6803 ldr r3, [r0, #0]
10000e4c: f003 033f and.w r3, r3, #63 @ 0x3f
10000e50: 428b cmp r3, r1
10000e52: d1da bne.n 10000e0a <pll_init+0x1a>
10000e54: 6883 ldr r3, [r0, #8]
10000e56: f3c3 030b ubfx r3, r3, #0, #12
10000e5a: 42b3 cmp r3, r6
10000e5c: d1d5 bne.n 10000e0a <pll_init+0x1a>
10000e5e: 68c3 ldr r3, [r0, #12]
10000e60: f403 23ee and.w r3, r3, #487424 @ 0x77000
10000e64: 42ab cmp r3, r5
10000e66: d1d0 bne.n 10000e0a <pll_init+0x1a>
10000e68: e7ed b.n 10000e46 <pll_init+0x56>
10000e6a: bf00 nop
10000e6c: 00b71b00 .word 0x00b71b00
10000e70: 40058000 .word 0x40058000
10000e74: 40022000 .word 0x40022000
10000e78: 40020000 .word 0x40020000
10000e7c <tick_start>:
10000e7c: 2301 movs r3, #1
10000e7e: eb00 0040 add.w r0, r0, r0, lsl #1
10000e82: 0080 lsls r0, r0, #2
10000e84: f100 4080 add.w r0, r0, #1073741824 @ 0x40000000
10000e88: f500 1084 add.w r0, r0, #1081344 @ 0x108000
10000e8c: 6041 str r1, [r0, #4]
10000e8e: 6003 str r3, [r0, #0]
10000e90: 4770 bx lr
10000e92: bf00 nop
10000e94 <rom_func_lookup>:
10000e94: 2300 movs r3, #0
10000e96: 8adb ldrh r3, [r3, #22]
10000e98: 2200 movs r2, #0
10000e9a: e842 f200 tt r2, r2
10000e9e: 0252 lsls r2, r2, #9
10000ea0: d401 bmi.n 10000ea6 <rom_func_lookup+0x12>
10000ea2: 2110 movs r1, #16
10000ea4: 4718 bx r3
10000ea6: 2104 movs r1, #4
10000ea8: 4718 bx r3
10000eaa: bf00 nop
10000eac <runtime_init_bootrom_locking_enable>:
10000eac: 4a03 ldr r2, [pc, #12] @ (10000ebc <runtime_init_bootrom_locking_enable+0x10>)
10000eae: f8d2 3828 ldr.w r3, [r2, #2088] @ 0x828
10000eb2: 2b00 cmp r3, #0
10000eb4: d0fb beq.n 10000eae <runtime_init_bootrom_locking_enable+0x2>
10000eb6: f3bf 8f5f dmb sy
10000eba: 4770 bx lr
10000ebc: 400e0000 .word 0x400e0000
10000ec0 <runtime_init_boot_locks_reset>:
10000ec0: 2100 movs r1, #0
10000ec2: 4b04 ldr r3, [pc, #16] @ (10000ed4 <runtime_init_boot_locks_reset+0x14>)
10000ec4: 4a04 ldr r2, [pc, #16] @ (10000ed8 <runtime_init_boot_locks_reset+0x18>)
10000ec6: f3bf 8f5f dmb sy
10000eca: f843 1b04 str.w r1, [r3], #4
10000ece: 4293 cmp r3, r2
10000ed0: d1f9 bne.n 10000ec6 <runtime_init_boot_locks_reset+0x6>
10000ed2: 4770 bx lr
10000ed4: 400e080c .word 0x400e080c
10000ed8: 400e082c .word 0x400e082c
10000edc <xosc_init>:
10000edc: b410 push {r4}
10000ede: f44f 708d mov.w r0, #282 @ 0x11a
10000ee2: f44f 642a mov.w r4, #2720 @ 0xaa0
10000ee6: 4a06 ldr r2, [pc, #24] @ (10000f00 <xosc_init+0x24>)
10000ee8: 4b06 ldr r3, [pc, #24] @ (10000f04 <xosc_init+0x28>)
10000eea: 4907 ldr r1, [pc, #28] @ (10000f08 <xosc_init+0x2c>)
10000eec: 6014 str r4, [r2, #0]
10000eee: 60d0 str r0, [r2, #12]
10000ef0: 6019 str r1, [r3, #0]
10000ef2: 6853 ldr r3, [r2, #4]
10000ef4: 2b00 cmp r3, #0
10000ef6: dafc bge.n 10000ef2 <xosc_init+0x16>
10000ef8: f85d 4b04 ldr.w r4, [sp], #4
10000efc: 4770 bx lr
10000efe: bf00 nop
10000f00: 40048000 .word 0x40048000
10000f04: 4004a000 .word 0x4004a000
10000f08: 00fab000 .word 0x00fab000
10000f0c <first_per_core_initializer>:
10000f0c: 4770 bx lr
10000f0e: bf00 nop
10000f10 <hard_assertion_failure>:
10000f10: b508 push {r3, lr}
10000f12: 4801 ldr r0, [pc, #4] @ (10000f18 <hard_assertion_failure+0x8>)
10000f14: f7ff fa10 bl 10000338 <panic>
10000f18: 10001634 .word 0x10001634
10000f1c <runtime_run_initializers>:
10000f1c: b538 push {r3, r4, r5, lr}
10000f1e: 4c05 ldr r4, [pc, #20] @ (10000f34 <runtime_run_initializers+0x18>)
10000f20: 4d05 ldr r5, [pc, #20] @ (10000f38 <runtime_run_initializers+0x1c>)
10000f22: 42ac cmp r4, r5
10000f24: d204 bcs.n 10000f30 <runtime_run_initializers+0x14>
10000f26: f854 3b04 ldr.w r3, [r4], #4
10000f2a: 4798 blx r3
10000f2c: 42ac cmp r4, r5
10000f2e: d3fa bcc.n 10000f26 <runtime_run_initializers+0xa>
10000f30: bd38 pop {r3, r4, r5, pc}
10000f32: bf00 nop
10000f34: 10001560 .word 0x10001560
10000f38: 100015a0 .word 0x100015a0
10000f3c <runtime_init_early_resets>:
10000f3c: b410 push {r4}
10000f3e: 4807 ldr r0, [pc, #28] @ (10000f5c <runtime_init_early_resets+0x20>)
10000f40: 4c07 ldr r4, [pc, #28] @ (10000f60 <runtime_init_early_resets+0x24>)
10000f42: 4b08 ldr r3, [pc, #32] @ (10000f64 <runtime_init_early_resets+0x28>)
10000f44: 4a08 ldr r2, [pc, #32] @ (10000f68 <runtime_init_early_resets+0x2c>)
10000f46: 4909 ldr r1, [pc, #36] @ (10000f6c <runtime_init_early_resets+0x30>)
10000f48: 6004 str r4, [r0, #0]
10000f4a: 601a str r2, [r3, #0]
10000f4c: 688b ldr r3, [r1, #8]
10000f4e: ea32 0303 bics.w r3, r2, r3
10000f52: d1fb bne.n 10000f4c <runtime_init_early_resets+0x10>
10000f54: f85d 4b04 ldr.w r4, [sp], #4
10000f58: 4770 bx lr
10000f5a: bf00 nop
10000f5c: 40022000 .word 0x40022000
10000f60: efef3b7f .word 0xefef3b7f
10000f64: 40023000 .word 0x40023000
10000f68: 03f3fff6 .word 0x03f3fff6
10000f6c: 40020000 .word 0x40020000
10000f70 <runtime_init_usb_power_down>:
10000f70: 4b04 ldr r3, [pc, #16] @ (10000f84 <runtime_init_usb_power_down+0x14>)
10000f72: 6cdb ldr r3, [r3, #76] @ 0x4c
10000f74: f5b3 4f00 cmp.w r3, #32768 @ 0x8000
10000f78: d103 bne.n 10000f82 <runtime_init_usb_power_down+0x12>
10000f7a: f44f 2280 mov.w r2, #262144 @ 0x40000
10000f7e: 4b02 ldr r3, [pc, #8] @ (10000f88 <runtime_init_usb_power_down+0x18>)
10000f80: 64da str r2, [r3, #76] @ 0x4c
10000f82: 4770 bx lr
10000f84: 50110000 .word 0x50110000
10000f88: 50112000 .word 0x50112000
10000f8c <runtime_init_per_core_enable_coprocessors>:
10000f8c: f04f 22e0 mov.w r2, #3758153728 @ 0xe000e000
10000f90: 4b04 ldr r3, [pc, #16] @ (10000fa4 <runtime_init_per_core_enable_coprocessors+0x18>)
10000f92: f8d2 1d88 ldr.w r1, [r2, #3464] @ 0xd88
10000f96: 430b orrs r3, r1
10000f98: f8c2 3d88 str.w r3, [r2, #3464] @ 0xd88
10000f9c: ee10 0430 dcp_rcmp r0
10000fa0: 4770 bx lr
10000fa2: bf00 nop
10000fa4: 00300303 .word 0x00300303
10000fa8 <runtime_init_post_clock_resets>:
10000fa8: f06f 4160 mvn.w r1, #3758096384 @ 0xe0000000
10000fac: 4b04 ldr r3, [pc, #16] @ (10000fc0 <runtime_init_post_clock_resets+0x18>)
10000fae: 4a05 ldr r2, [pc, #20] @ (10000fc4 <runtime_init_post_clock_resets+0x1c>)
10000fb0: 6019 str r1, [r3, #0]
10000fb2: 6893 ldr r3, [r2, #8]
10000fb4: 43db mvns r3, r3
10000fb6: f033 4360 bics.w r3, r3, #3758096384 @ 0xe0000000
10000fba: d1fa bne.n 10000fb2 <runtime_init_post_clock_resets+0xa>
10000fbc: 4770 bx lr
10000fbe: bf00 nop
10000fc0: 40023000 .word 0x40023000
10000fc4: 40020000 .word 0x40020000
10000fc8 <runtime_init_bootrom_reset>:
10000fc8: b510 push {r4, lr}
10000fca: f245 2053 movw r0, #21075 @ 0x5253
10000fce: f7ff ff61 bl 10000e94 <rom_func_lookup>
10000fd2: e8bd 4010 ldmia.w sp!, {r4, lr}
10000fd6: 4603 mov r3, r0
10000fd8: 2004 movs r0, #4
10000fda: 4718 bx r3
10000fdc <runtime_init_per_core_bootrom_reset>:
10000fdc: b510 push {r4, lr}
10000fde: f245 2053 movw r0, #21075 @ 0x5253
10000fe2: f7ff ff57 bl 10000e94 <rom_func_lookup>
10000fe6: e8bd 4010 ldmia.w sp!, {r4, lr}
10000fea: 4603 mov r3, r0
10000fec: 2001 movs r0, #1
10000fee: 4718 bx r3
10000ff0 <runtime_init_spin_locks_reset>:
10000ff0: f7ff b9fa b.w 100003e8 <spin_locks_reset>
10000ff4 <runtime_init_install_ram_vector_table>:
10000ff4: 4914 ldr r1, [pc, #80] @ (10001048 <runtime_init_install_ram_vector_table+0x54>)
10000ff6: 4b15 ldr r3, [pc, #84] @ (1000104c <runtime_init_install_ram_vector_table+0x58>)
10000ff8: b570 push {r4, r5, r6, lr}
10000ffa: 1a5c subs r4, r3, r1
10000ffc: 10a6 asrs r6, r4, #2
10000ffe: 2e44 cmp r6, #68 @ 0x44
10001000: 4632 mov r2, r6
10001002: bf28 it cs
10001004: 2244 movcs r2, #68 @ 0x44
10001006: 4d12 ldr r5, [pc, #72] @ (10001050 <runtime_init_install_ram_vector_table+0x5c>)
10001008: 0092 lsls r2, r2, #2
1000100a: 4628 mov r0, r5
1000100c: f000 f9fa bl 10001404 <memcpy>
10001010: f5b4 7f86 cmp.w r4, #268 @ 0x10c
10001014: d813 bhi.n 1000103e <runtime_init_install_ram_vector_table+0x4a>
10001016: 4a0f ldr r2, [pc, #60] @ (10001054 <runtime_init_install_ram_vector_table+0x60>)
10001018: f1c6 0044 rsb r0, r6, #68 @ 0x44
1000101c: d012 beq.n 10001044 <runtime_init_install_ram_vector_table+0x50>
1000101e: 192b adds r3, r5, r4
10001020: 0841 lsrs r1, r0, #1
10001022: eb03 01c1 add.w r1, r3, r1, lsl #3
10001026: e9c3 2200 strd r2, r2, [r3]
1000102a: 3308 adds r3, #8
1000102c: 428b cmp r3, r1
1000102e: d1fa bne.n 10001026 <runtime_init_install_ram_vector_table+0x32>
10001030: 07c3 lsls r3, r0, #31
10001032: d504 bpl.n 1000103e <runtime_init_install_ram_vector_table+0x4a>
10001034: f020 0001 bic.w r0, r0, #1
10001038: 4430 add r0, r6
1000103a: f845 2020 str.w r2, [r5, r0, lsl #2]
1000103e: 4b06 ldr r3, [pc, #24] @ (10001058 <runtime_init_install_ram_vector_table+0x64>)
10001040: 609d str r5, [r3, #8]
10001042: bd70 pop {r4, r5, r6, pc}
10001044: 2043 movs r0, #67 @ 0x43
10001046: e7f8 b.n 1000103a <runtime_init_install_ram_vector_table+0x46>
10001048: 10000000 .word 0x10000000
1000104c: 10000110 .word 0x10000110
10001050: 20000000 .word 0x20000000
10001054: 10000111 .word 0x10000111
10001058: e000ed00 .word 0xe000ed00
1000105c <runtime_init_clocks>:
1000105c: 2300 movs r3, #0
1000105e: b570 push {r4, r5, r6, lr}
10001060: 4c2b ldr r4, [pc, #172] @ (10001110 <runtime_init_clocks+0xb4>)
10001062: b082 sub sp, #8
10001064: f8c4 3084 str.w r3, [r4, #132] @ 0x84
10001068: f7ff ff38 bl 10000edc <xosc_init>
1000106c: 2201 movs r2, #1
1000106e: 4b29 ldr r3, [pc, #164] @ (10001114 <runtime_init_clocks+0xb8>)
10001070: 63da str r2, [r3, #60] @ 0x3c
10001072: 6c63 ldr r3, [r4, #68] @ 0x44
10001074: 2b01 cmp r3, #1
10001076: d1fc bne.n 10001072 <runtime_init_clocks+0x16>
10001078: 2103 movs r1, #3
1000107a: 4a26 ldr r2, [pc, #152] @ (10001114 <runtime_init_clocks+0xb8>)
1000107c: 4b24 ldr r3, [pc, #144] @ (10001110 <runtime_init_clocks+0xb4>)
1000107e: 6311 str r1, [r2, #48] @ 0x30
10001080: 6b9c ldr r4, [r3, #56] @ 0x38
10001082: 2c01 cmp r4, #1
10001084: d1fc bne.n 10001080 <runtime_init_clocks+0x24>
10001086: 2602 movs r6, #2
10001088: 2505 movs r5, #5
1000108a: 4621 mov r1, r4
1000108c: 2305 movs r3, #5
1000108e: 4a22 ldr r2, [pc, #136] @ (10001118 <runtime_init_clocks+0xbc>)
10001090: 4822 ldr r0, [pc, #136] @ (1000111c <runtime_init_clocks+0xc0>)
10001092: 9600 str r6, [sp, #0]
10001094: f7ff feac bl 10000df0 <pll_init>
10001098: 4621 mov r1, r4
1000109a: 462b mov r3, r5
1000109c: 4a20 ldr r2, [pc, #128] @ (10001120 <runtime_init_clocks+0xc4>)
1000109e: 4821 ldr r0, [pc, #132] @ (10001124 <runtime_init_clocks+0xc8>)
100010a0: 9500 str r5, [sp, #0]
100010a2: f7ff fea5 bl 10000df0 <pll_init>
100010a6: 2200 movs r2, #0
100010a8: 2004 movs r0, #4
100010aa: 4631 mov r1, r6
100010ac: 4b1e ldr r3, [pc, #120] @ (10001128 <runtime_init_clocks+0xcc>)
100010ae: f7ff fe31 bl 10000d14 <clock_configure_undivided>
100010b2: 4621 mov r1, r4
100010b4: 4628 mov r0, r5
100010b6: 2200 movs r2, #0
100010b8: 4b1c ldr r3, [pc, #112] @ (1000112c <runtime_init_clocks+0xd0>)
100010ba: f7ff fe2b bl 10000d14 <clock_configure_undivided>
100010be: 2200 movs r2, #0
100010c0: 2008 movs r0, #8
100010c2: 4611 mov r1, r2
100010c4: 4b1a ldr r3, [pc, #104] @ (10001130 <runtime_init_clocks+0xd4>)
100010c6: f7ff fe25 bl 10000d14 <clock_configure_undivided>
100010ca: 2200 movs r2, #0
100010cc: 2009 movs r0, #9
100010ce: 4611 mov r1, r2
100010d0: 4b17 ldr r3, [pc, #92] @ (10001130 <runtime_init_clocks+0xd4>)
100010d2: f7ff fe1f bl 10000d14 <clock_configure_undivided>
100010d6: 2200 movs r2, #0
100010d8: 2006 movs r0, #6
100010da: 4611 mov r1, r2
100010dc: 4b13 ldr r3, [pc, #76] @ (1000112c <runtime_init_clocks+0xd0>)
100010de: f7ff fe19 bl 10000d14 <clock_configure_undivided>
100010e2: 2200 movs r2, #0
100010e4: 4b11 ldr r3, [pc, #68] @ (1000112c <runtime_init_clocks+0xd0>)
100010e6: 2007 movs r0, #7
100010e8: 4611 mov r1, r2
100010ea: f7ff fe13 bl 10000d14 <clock_configure_undivided>
100010ee: 2004 movs r0, #4
100010f0: f7ff fe78 bl 10000de4 <clock_get_hz>
100010f4: 2400 movs r4, #0
100010f6: 4b0f ldr r3, [pc, #60] @ (10001134 <runtime_init_clocks+0xd8>)
100010f8: fba3 3500 umull r3, r5, r3, r0
100010fc: 0cad lsrs r5, r5, #18
100010fe: b2e0 uxtb r0, r4
10001100: 4629 mov r1, r5
10001102: 3401 adds r4, #1
10001104: f7ff feba bl 10000e7c <tick_start>
10001108: 2c06 cmp r4, #6
1000110a: d1f8 bne.n 100010fe <runtime_init_clocks+0xa2>
1000110c: b002 add sp, #8
1000110e: bd70 pop {r4, r5, r6, pc}
10001110: 40010000 .word 0x40010000
10001114: 40013000 .word 0x40013000
10001118: 59682f00 .word 0x59682f00
1000111c: 40050000 .word 0x40050000
10001120: 47868c00 .word 0x47868c00
10001124: 40058000 .word 0x40058000
10001128: 00b71b00 .word 0x00b71b00
1000112c: 08f0d180 .word 0x08f0d180
10001130: 02dc6c00 .word 0x02dc6c00
10001134: 431bde83 .word 0x431bde83
10001138 <_out_char>:
10001138: b900 cbnz r0, 1000113c <_out_char+0x4>
1000113a: 4770 bx lr
1000113c: f000 b902 b.w 10001344 <__wrap_putchar>
10001140 <weak_raw_vprintf>:
10001140: b510 push {r4, lr}
10001142: 4b09 ldr r3, [pc, #36] @ (10001168 <weak_raw_vprintf+0x28>)
10001144: b084 sub sp, #16
10001146: 681c ldr r4, [r3, #0]
10001148: b14c cbz r4, 1000115e <weak_raw_vprintf+0x1e>
1000114a: 4603 mov r3, r0
1000114c: 9100 str r1, [sp, #0]
1000114e: f04f 32ff mov.w r2, #4294967295
10001152: a903 add r1, sp, #12
10001154: 4805 ldr r0, [pc, #20] @ (1000116c <weak_raw_vprintf+0x2c>)
10001156: 47a0 blx r4
10001158: 2001 movs r0, #1
1000115a: b004 add sp, #16
1000115c: bd10 pop {r4, pc}
1000115e: f000 f933 bl 100013c8 <__wrap_puts>
10001162: 4620 mov r0, r4
10001164: b004 add sp, #16
10001166: bd10 pop {r4, pc}
10001168: 20000424 .word 0x20000424
1000116c: 10001139 .word 0x10001139
10001170 <_exit>:
10001170: be00 bkpt 0x0000
10001172: e7fd b.n 10001170 <_exit>
10001174 <exit>:
10001174: b508 push {r3, lr}
10001176: f7ff fffb bl 10001170 <_exit>
1000117a: bf00 nop
1000117c <runtime_init>:
1000117c: b538 push {r3, r4, r5, lr}
1000117e: 4c06 ldr r4, [pc, #24] @ (10001198 <runtime_init+0x1c>)
10001180: 4d06 ldr r5, [pc, #24] @ (1000119c <runtime_init+0x20>)
10001182: f7ff fecb bl 10000f1c <runtime_run_initializers>
10001186: 42ac cmp r4, r5
10001188: d204 bcs.n 10001194 <runtime_init+0x18>
1000118a: f854 3b04 ldr.w r3, [r4], #4
1000118e: 4798 blx r3
10001190: 42ac cmp r4, r5
10001192: d3fa bcc.n 1000118a <runtime_init+0xe>
10001194: bd38 pop {r3, r4, r5, pc}
10001196: bf00 nop
10001198: 100015a0 .word 0x100015a0
1000119c: 100015a4 .word 0x100015a4
100011a0 <stdio_out_chars_no_crlf>:
100011a0: 6803 ldr r3, [r0, #0]
100011a2: 4608 mov r0, r1
100011a4: 4611 mov r1, r2
100011a6: 4718 bx r3
100011a8 <stdio_out_chars_crlf>:
100011a8: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr}
100011ac: 4615 mov r5, r2
100011ae: 7d42 ldrb r2, [r0, #21]
100011b0: 4607 mov r7, r0
100011b2: 4688 mov r8, r1
100011b4: 2a00 cmp r2, #0
100011b6: d046 beq.n 10001246 <stdio_out_chars_crlf+0x9e>
100011b8: 2d00 cmp r5, #0
100011ba: dd1d ble.n 100011f8 <stdio_out_chars_crlf+0x50>
100011bc: 780b ldrb r3, [r1, #0]
100011be: 2b0a cmp r3, #10
100011c0: d023 beq.n 1000120a <stdio_out_chars_crlf+0x62>
100011c2: 2d01 cmp r5, #1
100011c4: f04f 0c00 mov.w ip, #0
100011c8: d018 beq.n 100011fc <stdio_out_chars_crlf+0x54>
100011ca: 4646 mov r6, r8
100011cc: 2401 movs r4, #1
100011ce: f816 2f01 ldrb.w r2, [r6, #1]!
100011d2: 4621 mov r1, r4
100011d4: 2a0a cmp r2, #10
100011d6: f104 0401 add.w r4, r4, #1
100011da: d022 beq.n 10001222 <stdio_out_chars_crlf+0x7a>
100011dc: 42a5 cmp r5, r4
100011de: d1f6 bne.n 100011ce <stdio_out_chars_crlf+0x26>
100011e0: 4565 cmp r5, ip
100011e2: dc0b bgt.n 100011fc <stdio_out_chars_crlf+0x54>
100011e4: eb08 0305 add.w r3, r8, r5
100011e8: f813 3c01 ldrb.w r3, [r3, #-1]
100011ec: f1a3 030d sub.w r3, r3, #13
100011f0: fab3 f383 clz r3, r3
100011f4: 095b lsrs r3, r3, #5
100011f6: 753b strb r3, [r7, #20]
100011f8: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc}
100011fc: 683b ldr r3, [r7, #0]
100011fe: eba5 010c sub.w r1, r5, ip
10001202: eb08 000c add.w r0, r8, ip
10001206: 4798 blx r3
10001208: e7ec b.n 100011e4 <stdio_out_chars_crlf+0x3c>
1000120a: 7d03 ldrb r3, [r0, #20]
1000120c: 2b00 cmp r3, #0
1000120e: d1d8 bne.n 100011c2 <stdio_out_chars_crlf+0x1a>
10001210: 6803 ldr r3, [r0, #0]
10001212: 2102 movs r1, #2
10001214: 480f ldr r0, [pc, #60] @ (10001254 <stdio_out_chars_crlf+0xac>)
10001216: 4798 blx r3
10001218: 2d01 cmp r5, #1
1000121a: d0e3 beq.n 100011e4 <stdio_out_chars_crlf+0x3c>
1000121c: f04f 0c01 mov.w ip, #1
10001220: e7d3 b.n 100011ca <stdio_out_chars_crlf+0x22>
10001222: f816 3c01 ldrb.w r3, [r6, #-1]
10001226: 2b0d cmp r3, #13
10001228: d0d8 beq.n 100011dc <stdio_out_chars_crlf+0x34>
1000122a: 458c cmp ip, r1
1000122c: eb08 000c add.w r0, r8, ip
10001230: eba1 010c sub.w r1, r1, ip
10001234: da01 bge.n 1000123a <stdio_out_chars_crlf+0x92>
10001236: 683b ldr r3, [r7, #0]
10001238: 4798 blx r3
1000123a: 2102 movs r1, #2
1000123c: 4805 ldr r0, [pc, #20] @ (10001254 <stdio_out_chars_crlf+0xac>)
1000123e: 683b ldr r3, [r7, #0]
10001240: 4798 blx r3
10001242: 46a4 mov ip, r4
10001244: e7ca b.n 100011dc <stdio_out_chars_crlf+0x34>
10001246: 4629 mov r1, r5
10001248: 4640 mov r0, r8
1000124a: 683b ldr r3, [r7, #0]
1000124c: e8bd 41f0 ldmia.w sp!, {r4, r5, r6, r7, r8, lr}
10001250: 4718 bx r3
10001252: bf00 nop
10001254: 100016e4 .word 0x100016e4
10001258 <stdio_put_string>:
10001258: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr}
1000125c: b082 sub sp, #8
1000125e: 460d mov r5, r1
10001260: 4691 mov r9, r2
10001262: 461c mov r4, r3
10001264: 4606 mov r6, r0
10001266: f7ff fc9b bl 10000ba0 <time_us_64>
1000126a: f04f 3cff mov.w ip, #4294967295
1000126e: f06f 4700 mvn.w r7, #2147483648 @ 0x80000000
10001272: 4a2e ldr r2, [pc, #184] @ (1000132c <stdio_put_string+0xd4>)
10001274: 1882 adds r2, r0, r2
10001276: f141 0300 adc.w r3, r1, #0
1000127a: 4594 cmp ip, r2
1000127c: eb77 0103 sbcs.w r1, r7, r3
10001280: bf3c itt cc
10001282: 4662 movcc r2, ip
10001284: 463b movcc r3, r7
10001286: 482a ldr r0, [pc, #168] @ (10001330 <stdio_put_string+0xd8>)
10001288: f000 f966 bl 10001558 <__mutex_try_enter_block_until_veneer>
1000128c: 1c6b adds r3, r5, #1
1000128e: 4680 mov r8, r0
10001290: d040 beq.n 10001314 <stdio_put_string+0xbc>
10001292: b30c cbz r4, 100012d8 <stdio_put_string+0x80>
10001294: 4f27 ldr r7, [pc, #156] @ (10001334 <stdio_put_string+0xdc>)
10001296: 4b28 ldr r3, [pc, #160] @ (10001338 <stdio_put_string+0xe0>)
10001298: 681c ldr r4, [r3, #0]
1000129a: b1b4 cbz r4, 100012ca <stdio_put_string+0x72>
1000129c: f1b9 0f00 cmp.w r9, #0
100012a0: d11c bne.n 100012dc <stdio_put_string+0x84>
100012a2: f8df 909c ldr.w r9, [pc, #156] @ 10001340 <stdio_put_string+0xe8>
100012a6: e001 b.n 100012ac <stdio_put_string+0x54>
100012a8: 6924 ldr r4, [r4, #16]
100012aa: b174 cbz r4, 100012ca <stdio_put_string+0x72>
100012ac: 6823 ldr r3, [r4, #0]
100012ae: 2b00 cmp r3, #0
100012b0: d0fa beq.n 100012a8 <stdio_put_string+0x50>
100012b2: f8d9 3000 ldr.w r3, [r9]
100012b6: b10b cbz r3, 100012bc <stdio_put_string+0x64>
100012b8: 429c cmp r4, r3
100012ba: d1f5 bne.n 100012a8 <stdio_put_string+0x50>
100012bc: 4620 mov r0, r4
100012be: 462a mov r2, r5
100012c0: 4631 mov r1, r6
100012c2: 47b8 blx r7
100012c4: 6924 ldr r4, [r4, #16]
100012c6: 2c00 cmp r4, #0
100012c8: d1f0 bne.n 100012ac <stdio_put_string+0x54>
100012ca: f1b8 0f00 cmp.w r8, #0
100012ce: d126 bne.n 1000131e <stdio_put_string+0xc6>
100012d0: 4628 mov r0, r5
100012d2: b002 add sp, #8
100012d4: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc}
100012d8: 4f18 ldr r7, [pc, #96] @ (1000133c <stdio_put_string+0xe4>)
100012da: e7dc b.n 10001296 <stdio_put_string+0x3e>
100012dc: f04f 0a0a mov.w sl, #10
100012e0: f8df 905c ldr.w r9, [pc, #92] @ 10001340 <stdio_put_string+0xe8>
100012e4: e002 b.n 100012ec <stdio_put_string+0x94>
100012e6: 6924 ldr r4, [r4, #16]
100012e8: 2c00 cmp r4, #0
100012ea: d0ee beq.n 100012ca <stdio_put_string+0x72>
100012ec: 6823 ldr r3, [r4, #0]
100012ee: 2b00 cmp r3, #0
100012f0: d0f9 beq.n 100012e6 <stdio_put_string+0x8e>
100012f2: f8d9 3000 ldr.w r3, [r9]
100012f6: b10b cbz r3, 100012fc <stdio_put_string+0xa4>
100012f8: 42a3 cmp r3, r4
100012fa: d1f4 bne.n 100012e6 <stdio_put_string+0x8e>
100012fc: 462a mov r2, r5
100012fe: 4631 mov r1, r6
10001300: 4620 mov r0, r4
10001302: 47b8 blx r7
10001304: 2201 movs r2, #1
10001306: 4620 mov r0, r4
10001308: f10d 0107 add.w r1, sp, #7
1000130c: f88d a007 strb.w sl, [sp, #7]
10001310: 47b8 blx r7
10001312: e7e8 b.n 100012e6 <stdio_put_string+0x8e>
10001314: 4630 mov r0, r6
10001316: f000 f8eb bl 100014f0 <strlen>
1000131a: 4605 mov r5, r0
1000131c: e7b9 b.n 10001292 <stdio_put_string+0x3a>
1000131e: 4804 ldr r0, [pc, #16] @ (10001330 <stdio_put_string+0xd8>)
10001320: f000 f916 bl 10001550 <__mutex_exit_veneer>
10001324: 4628 mov r0, r5
10001326: b002 add sp, #8
10001328: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc}
1000132c: 000f4240 .word 0x000f4240
10001330: 20000244 .word 0x20000244
10001334: 100011a9 .word 0x100011a9
10001338: 2000041c .word 0x2000041c
1000133c: 100011a1 .word 0x100011a1
10001340: 20000420 .word 0x20000420
10001344 <__wrap_putchar>:
10001344: b5f0 push {r4, r5, r6, r7, lr}
10001346: b083 sub sp, #12
10001348: 4606 mov r6, r0
1000134a: f88d 0007 strb.w r0, [sp, #7]
1000134e: f7ff fc27 bl 10000ba0 <time_us_64>
10001352: f04f 35ff mov.w r5, #4294967295
10001356: f06f 4400 mvn.w r4, #2147483648 @ 0x80000000
1000135a: 4a17 ldr r2, [pc, #92] @ (100013b8 <__wrap_putchar+0x74>)
1000135c: 1882 adds r2, r0, r2
1000135e: f141 0300 adc.w r3, r1, #0
10001362: 4295 cmp r5, r2
10001364: eb74 0103 sbcs.w r1, r4, r3
10001368: bf3c itt cc
1000136a: 4623 movcc r3, r4
1000136c: 462a movcc r2, r5
1000136e: 4813 ldr r0, [pc, #76] @ (100013bc <__wrap_putchar+0x78>)
10001370: f000 f8f2 bl 10001558 <__mutex_try_enter_block_until_veneer>
10001374: 4b12 ldr r3, [pc, #72] @ (100013c0 <__wrap_putchar+0x7c>)
10001376: 4607 mov r7, r0
10001378: 681c ldr r4, [r3, #0]
1000137a: b19c cbz r4, 100013a4 <__wrap_putchar+0x60>
1000137c: 4d11 ldr r5, [pc, #68] @ (100013c4 <__wrap_putchar+0x80>)
1000137e: e001 b.n 10001384 <__wrap_putchar+0x40>
10001380: 6924 ldr r4, [r4, #16]
10001382: b17c cbz r4, 100013a4 <__wrap_putchar+0x60>
10001384: 6823 ldr r3, [r4, #0]
10001386: 2b00 cmp r3, #0
10001388: d0fa beq.n 10001380 <__wrap_putchar+0x3c>
1000138a: 682b ldr r3, [r5, #0]
1000138c: b10b cbz r3, 10001392 <__wrap_putchar+0x4e>
1000138e: 429c cmp r4, r3
10001390: d1f6 bne.n 10001380 <__wrap_putchar+0x3c>
10001392: 4620 mov r0, r4
10001394: 2201 movs r2, #1
10001396: f10d 0107 add.w r1, sp, #7
1000139a: f7ff ff05 bl 100011a8 <stdio_out_chars_crlf>
1000139e: 6924 ldr r4, [r4, #16]
100013a0: 2c00 cmp r4, #0
100013a2: d1ef bne.n 10001384 <__wrap_putchar+0x40>
100013a4: b917 cbnz r7, 100013ac <__wrap_putchar+0x68>
100013a6: 4630 mov r0, r6
100013a8: b003 add sp, #12
100013aa: bdf0 pop {r4, r5, r6, r7, pc}
100013ac: 4803 ldr r0, [pc, #12] @ (100013bc <__wrap_putchar+0x78>)
100013ae: f000 f8cf bl 10001550 <__mutex_exit_veneer>
100013b2: 4630 mov r0, r6
100013b4: b003 add sp, #12
100013b6: bdf0 pop {r4, r5, r6, r7, pc}
100013b8: 000f4240 .word 0x000f4240
100013bc: 20000244 .word 0x20000244
100013c0: 2000041c .word 0x2000041c
100013c4: 20000420 .word 0x20000420
100013c8 <__wrap_puts>:
100013c8: b538 push {r3, r4, r5, lr}
100013ca: 4604 mov r4, r0
100013cc: f000 f890 bl 100014f0 <strlen>
100013d0: 2301 movs r3, #1
100013d2: 4605 mov r5, r0
100013d4: 461a mov r2, r3
100013d6: 4620 mov r0, r4
100013d8: 4629 mov r1, r5
100013da: f7ff ff3d bl 10001258 <stdio_put_string>
100013de: 4b08 ldr r3, [pc, #32] @ (10001400 <__wrap_puts+0x38>)
100013e0: 681c ldr r4, [r3, #0]
100013e2: b12c cbz r4, 100013f0 <__wrap_puts+0x28>
100013e4: 6863 ldr r3, [r4, #4]
100013e6: b12b cbz r3, 100013f4 <__wrap_puts+0x2c>
100013e8: 4798 blx r3
100013ea: 6924 ldr r4, [r4, #16]
100013ec: 2c00 cmp r4, #0
100013ee: d1f9 bne.n 100013e4 <__wrap_puts+0x1c>
100013f0: 4628 mov r0, r5
100013f2: bd38 pop {r3, r4, r5, pc}
100013f4: 6924 ldr r4, [r4, #16]
100013f6: 2c00 cmp r4, #0
100013f8: d1f4 bne.n 100013e4 <__wrap_puts+0x1c>
100013fa: 4628 mov r0, r5
100013fc: bd38 pop {r3, r4, r5, pc}
100013fe: bf00 nop
10001400: 2000041c .word 0x2000041c
10001404 <memcpy>:
10001404: 4684 mov ip, r0
10001406: ea41 0300 orr.w r3, r1, r0
1000140a: f013 0303 ands.w r3, r3, #3
1000140e: d149 bne.n 100014a4 <memcpy+0xa0>
10001410: 3a40 subs r2, #64 @ 0x40
10001412: d323 bcc.n 1000145c <memcpy+0x58>
10001414: 680b ldr r3, [r1, #0]
10001416: 6003 str r3, [r0, #0]
10001418: 684b ldr r3, [r1, #4]
1000141a: 6043 str r3, [r0, #4]
1000141c: 688b ldr r3, [r1, #8]
1000141e: 6083 str r3, [r0, #8]
10001420: 68cb ldr r3, [r1, #12]
10001422: 60c3 str r3, [r0, #12]
10001424: 690b ldr r3, [r1, #16]
10001426: 6103 str r3, [r0, #16]
10001428: 694b ldr r3, [r1, #20]
1000142a: 6143 str r3, [r0, #20]
1000142c: 698b ldr r3, [r1, #24]
1000142e: 6183 str r3, [r0, #24]
10001430: 69cb ldr r3, [r1, #28]
10001432: 61c3 str r3, [r0, #28]
10001434: 6a0b ldr r3, [r1, #32]
10001436: 6203 str r3, [r0, #32]
10001438: 6a4b ldr r3, [r1, #36] @ 0x24
1000143a: 6243 str r3, [r0, #36] @ 0x24
1000143c: 6a8b ldr r3, [r1, #40] @ 0x28
1000143e: 6283 str r3, [r0, #40] @ 0x28
10001440: 6acb ldr r3, [r1, #44] @ 0x2c
10001442: 62c3 str r3, [r0, #44] @ 0x2c
10001444: 6b0b ldr r3, [r1, #48] @ 0x30
10001446: 6303 str r3, [r0, #48] @ 0x30
10001448: 6b4b ldr r3, [r1, #52] @ 0x34
1000144a: 6343 str r3, [r0, #52] @ 0x34
1000144c: 6b8b ldr r3, [r1, #56] @ 0x38
1000144e: 6383 str r3, [r0, #56] @ 0x38
10001450: 6bcb ldr r3, [r1, #60] @ 0x3c
10001452: 63c3 str r3, [r0, #60] @ 0x3c
10001454: 3040 adds r0, #64 @ 0x40
10001456: 3140 adds r1, #64 @ 0x40
10001458: 3a40 subs r2, #64 @ 0x40
1000145a: d2db bcs.n 10001414 <memcpy+0x10>
1000145c: 3230 adds r2, #48 @ 0x30
1000145e: d30b bcc.n 10001478 <memcpy+0x74>
10001460: 680b ldr r3, [r1, #0]
10001462: 6003 str r3, [r0, #0]
10001464: 684b ldr r3, [r1, #4]
10001466: 6043 str r3, [r0, #4]
10001468: 688b ldr r3, [r1, #8]
1000146a: 6083 str r3, [r0, #8]
1000146c: 68cb ldr r3, [r1, #12]
1000146e: 60c3 str r3, [r0, #12]
10001470: 3010 adds r0, #16
10001472: 3110 adds r1, #16
10001474: 3a10 subs r2, #16
10001476: d2f3 bcs.n 10001460 <memcpy+0x5c>
10001478: 320c adds r2, #12
1000147a: d305 bcc.n 10001488 <memcpy+0x84>
1000147c: f851 3b04 ldr.w r3, [r1], #4
10001480: f840 3b04 str.w r3, [r0], #4
10001484: 3a04 subs r2, #4
10001486: d2f9 bcs.n 1000147c <memcpy+0x78>
10001488: 3204 adds r2, #4
1000148a: d008 beq.n 1000149e <memcpy+0x9a>
1000148c: 07d2 lsls r2, r2, #31
1000148e: bf1c itt ne
10001490: f811 3b01 ldrbne.w r3, [r1], #1
10001494: f800 3b01 strbne.w r3, [r0], #1
10001498: d301 bcc.n 1000149e <memcpy+0x9a>
1000149a: 880b ldrh r3, [r1, #0]
1000149c: 8003 strh r3, [r0, #0]
1000149e: 4660 mov r0, ip
100014a0: 4770 bx lr
100014a2: bf00 nop
100014a4: 2a08 cmp r2, #8
100014a6: d313 bcc.n 100014d0 <memcpy+0xcc>
100014a8: 078b lsls r3, r1, #30
100014aa: d0b1 beq.n 10001410 <memcpy+0xc>
100014ac: f010 0303 ands.w r3, r0, #3
100014b0: d0ae beq.n 10001410 <memcpy+0xc>
100014b2: f1c3 0304 rsb r3, r3, #4
100014b6: 1ad2 subs r2, r2, r3
100014b8: 07db lsls r3, r3, #31
100014ba: bf1c itt ne
100014bc: f811 3b01 ldrbne.w r3, [r1], #1
100014c0: f800 3b01 strbne.w r3, [r0], #1
100014c4: d3a4 bcc.n 10001410 <memcpy+0xc>
100014c6: f831 3b02 ldrh.w r3, [r1], #2
100014ca: f820 3b02 strh.w r3, [r0], #2
100014ce: e79f b.n 10001410 <memcpy+0xc>
100014d0: 3a04 subs r2, #4
100014d2: d3d9 bcc.n 10001488 <memcpy+0x84>
100014d4: 3a01 subs r2, #1
100014d6: f811 3b01 ldrb.w r3, [r1], #1
100014da: f800 3b01 strb.w r3, [r0], #1
100014de: d2f9 bcs.n 100014d4 <memcpy+0xd0>
100014e0: 780b ldrb r3, [r1, #0]
100014e2: 7003 strb r3, [r0, #0]
100014e4: 784b ldrb r3, [r1, #1]
100014e6: 7043 strb r3, [r0, #1]
100014e8: 788b ldrb r3, [r1, #2]
100014ea: 7083 strb r3, [r0, #2]
100014ec: 4660 mov r0, ip
100014ee: 4770 bx lr
100014f0 <strlen>:
100014f0: f020 0103 bic.w r1, r0, #3
100014f4: f010 0003 ands.w r0, r0, #3
100014f8: f1c0 0000 rsb r0, r0, #0
100014fc: f851 3b04 ldr.w r3, [r1], #4
10001500: f100 0c04 add.w ip, r0, #4
10001504: ea4f 0ccc mov.w ip, ip, lsl #3
10001508: f06f 0200 mvn.w r2, #0
1000150c: bf1c itt ne
1000150e: fa22 f20c lsrne.w r2, r2, ip
10001512: 4313 orrne r3, r2
10001514: f04f 0c01 mov.w ip, #1
10001518: ea4c 2c0c orr.w ip, ip, ip, lsl #8
1000151c: ea4c 4c0c orr.w ip, ip, ip, lsl #16
10001520: eba3 020c sub.w r2, r3, ip
10001524: ea22 0203 bic.w r2, r2, r3
10001528: ea12 12cc ands.w r2, r2, ip, lsl #7
1000152c: bf04 itt eq
1000152e: f851 3b04 ldreq.w r3, [r1], #4
10001532: 3004 addeq r0, #4
10001534: d0f4 beq.n 10001520 <strlen+0x30>
10001536: f1c2 0100 rsb r1, r2, #0
1000153a: ea02 0201 and.w r2, r2, r1
1000153e: fab2 f282 clz r2, r2
10001542: f1c2 021f rsb r2, r2, #31
10001546: eb00 00d2 add.w r0, r0, r2, lsr #3
1000154a: 4770 bx lr
1000154c <_fini>:
1000154c: b5f8 push {r3, r4, r5, r6, r7, lr}
1000154e: bf00 nop
10001550 <__mutex_exit_veneer>:
10001550: f85f f000 ldr.w pc, [pc] @ 10001554 <__mutex_exit_veneer+0x4>
10001554: 200001e5 .word 0x200001e5
10001558 <__mutex_try_enter_block_until_veneer>:
10001558: f85f f000 ldr.w pc, [pc] @ 1000155c <__mutex_try_enter_block_until_veneer+0x4>
1000155c: 2000017d .word 0x2000017d
10001560 <__pre_init_runtime_init_bootrom_reset>:
10001560: 10000fc9 ....
10001564 <__pre_init_runtime_init_early_resets>:
10001564: 10000f3d =...
10001568 <__pre_init_runtime_init_usb_power_down>:
10001568: 10000f71 q...
1000156c <__pre_init_runtime_init_clocks>:
1000156c: 1000105d ]...
10001570 <__pre_init_runtime_init_post_clock_resets>:
10001570: 10000fa9 ....
10001574 <__pre_init_runtime_init_boot_locks_reset>:
10001574: 10000ec1 ....
10001578 <__pre_init_runtime_init_spin_locks_reset>:
10001578: 10000ff1 ....
1000157c <__pre_init_runtime_init_bootrom_locking_enable>:
1000157c: 10000ead ....
10001580 <__pre_init_runtime_init_mutex>:
10001580: 100004d9 ....
10001584 <__pre_init_runtime_init_install_ram_vector_table>:
10001584: 10000ff5 ....
10001588 <__pre_init_runtime_init_default_alarm_pool>:
10001588: 10000851 Q...
1000158c <__pre_init_first_per_core_initializer>:
1000158c: 10000f0d ....
10001590 <__pre_init_runtime_init_per_core_bootrom_reset>:
10001590: 10000fdd ....
10001594 <__pre_init_runtime_init_per_core_enable_coprocessors>:
10001594: 10000f8d ....
10001598 <__pre_init_spinlock_set_extexclall>:
10001598: 100003d9 ....
1000159c <__pre_init_runtime_init_per_core_irq_priorities>:
1000159c: 10000401 ....
100015a0 <__frame_dummy_init_array_entry>:
100015a0: 10000211 ....
Disassembly of section .data:
20000110 <mutex_enter_block_until>:
20000110: f04f 4150 mov.w r1, #3489660928 @ 0xd0000000
20000114: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr}
20000118: 2700 movs r7, #0
2000011a: 4604 mov r4, r0
2000011c: 4616 mov r6, r2
2000011e: 461d mov r5, r3
20000120: f8d1 8000 ldr.w r8, [r1]
20000124: e008 b.n 20000138 <mutex_enter_block_until+0x28>
20000126: e8c1 7f8f stlb r7, [r1]
2000012a: f38c 8810 msr PRIMASK, ip
2000012e: 4630 mov r0, r6
20000130: 4629 mov r1, r5
20000132: f000 f875 bl 20000220 <__best_effort_wfe_or_timeout_veneer>
20000136: b9e8 cbnz r0, 20000174 <mutex_enter_block_until+0x64>
20000138: 6821 ldr r1, [r4, #0]
2000013a: f3ef 8c10 mrs ip, PRIMASK
2000013e: b672 cpsid i
20000140: e8d1 2fcf ldaexb r2, [r1]
20000144: 2301 movs r3, #1
20000146: 2a00 cmp r2, #0
20000148: d1fa bne.n 20000140 <mutex_enter_block_until+0x30>
2000014a: e8c1 3f42 strexb r2, r3, [r1]
2000014e: 2a00 cmp r2, #0
20000150: d1f6 bne.n 20000140 <mutex_enter_block_until+0x30>
20000152: f3bf 8f5f dmb sy
20000156: f994 3004 ldrsb.w r3, [r4, #4]
2000015a: 6821 ldr r1, [r4, #0]
2000015c: 2b00 cmp r3, #0
2000015e: dae2 bge.n 20000126 <mutex_enter_block_until+0x16>
20000160: 2300 movs r3, #0
20000162: f884 8004 strb.w r8, [r4, #4]
20000166: e8c1 3f8f stlb r3, [r1]
2000016a: f38c 8810 msr PRIMASK, ip
2000016e: 2001 movs r0, #1
20000170: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc}
20000174: 2000 movs r0, #0
20000176: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc}
2000017a: bf00 nop
2000017c <mutex_try_enter_block_until>:
2000017c: b530 push {r4, r5, lr}
2000017e: 6804 ldr r4, [r0, #0]
20000180: f3ef 8c10 mrs ip, PRIMASK
20000184: b672 cpsid i
20000186: e8d4 efcf ldaexb lr, [r4]
2000018a: 2501 movs r5, #1
2000018c: f1be 0f00 cmp.w lr, #0
20000190: d1f9 bne.n 20000186 <mutex_try_enter_block_until+0xa>
20000192: e8c4 5f4e strexb lr, r5, [r4]
20000196: f1be 0f00 cmp.w lr, #0
2000019a: d1f4 bne.n 20000186 <mutex_try_enter_block_until+0xa>
2000019c: f3bf 8f5f dmb sy
200001a0: f990 4004 ldrsb.w r4, [r0, #4]
200001a4: 6805 ldr r5, [r0, #0]
200001a6: 2c00 cmp r4, #0
200001a8: db10 blt.n 200001cc <mutex_try_enter_block_until+0x50>
200001aa: 2100 movs r1, #0
200001ac: e8c5 1f8f stlb r1, [r5]
200001b0: f38c 8810 msr PRIMASK, ip
200001b4: f04f 4550 mov.w r5, #3489660928 @ 0xd0000000
200001b8: f995 5000 ldrsb.w r5, [r5]
200001bc: 42a5 cmp r5, r4
200001be: d101 bne.n 200001c4 <mutex_try_enter_block_until+0x48>
200001c0: 4608 mov r0, r1
200001c2: bd30 pop {r4, r5, pc}
200001c4: e8bd 4030 ldmia.w sp!, {r4, r5, lr}
200001c8: f7ff bfa2 b.w 20000110 <mutex_enter_block_until>
200001cc: f04f 4250 mov.w r2, #3489660928 @ 0xd0000000
200001d0: 6812 ldr r2, [r2, #0]
200001d2: 2300 movs r3, #0
200001d4: 7102 strb r2, [r0, #4]
200001d6: e8c5 3f8f stlb r3, [r5]
200001da: f38c 8810 msr PRIMASK, ip
200001de: 2001 movs r0, #1
200001e0: bd30 pop {r4, r5, pc}
200001e2: bf00 nop
200001e4 <mutex_exit>:
200001e4: 6803 ldr r3, [r0, #0]
200001e6: f3ef 8210 mrs r2, PRIMASK
200001ea: b672 cpsid i
200001ec: e8d3 cfcf ldaexb ip, [r3]
200001f0: 2101 movs r1, #1
200001f2: f1bc 0f00 cmp.w ip, #0
200001f6: d1f9 bne.n 200001ec <mutex_exit+0x8>
200001f8: e8c3 1f4c strexb ip, r1, [r3]
200001fc: f1bc 0f00 cmp.w ip, #0
20000200: d1f4 bne.n 200001ec <mutex_exit+0x8>
20000202: f3bf 8f5f dmb sy
20000206: f04f 0cff mov.w ip, #255 @ 0xff
2000020a: 2300 movs r3, #0
2000020c: 6801 ldr r1, [r0, #0]
2000020e: f880 c004 strb.w ip, [r0, #4]
20000212: e8c1 3f8f stlb r3, [r1]
20000216: f382 8810 msr PRIMASK, r2
2000021a: bf40 sev
2000021c: 4770 bx lr
2000021e: bf00 nop
20000220 <__best_effort_wfe_or_timeout_veneer>:
20000220: f85f f000 ldr.w pc, [pc] @ 20000224 <__best_effort_wfe_or_timeout_veneer+0x4>
20000224: 10000a99 .word 0x10000a99
20000228 <striped_spin_lock_num>:
20000228: 00000010 ....
2000022c <default_alarm_pool>:
...
20000240: 20000250 P..
20000244 <print_mutex>:
...