1 .syntax unified 2 .cpu cortex-m4 3 .fpu softvfp 4 .eabi_attribute 20, 1 @ Tag_ABI_FP_denormal 5 .eabi_attribute 21, 1 @ Tag_ABI_FP_exceptions 6 .eabi_attribute 23, 3 @ Tag_ABI_FP_number_model 7 .eabi_attribute 24, 1 @ Tag_ABI_align8_needed 8 .eabi_attribute 25, 1 @ Tag_ABI_align8_preserved 9 .eabi_attribute 26, 1 @ Tag_ABI_enum_size 10 .eabi_attribute 30, 6 @ Tag_ABI_optimization_goals 11 .eabi_attribute 34, 1 @ Tag_CPU_unaligned_access 12 .file "start.d" 13 @ GNU D (GCC) version 4.8.2 (arm-none-eabi) 14 @ compiled by GNU C version 4.8.2, GMP version 5.1.3, MPFR version 3.1.2-p5, MPC version 1.0.1 15 @ GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 16 @ options passed: source/start.d -mthumb -mcpu=cortex-m4 17 @ -fno-emit-moduleinfo -ffunction-sections -fdata-sections 18 @ -fdump-tree-optimized -fverbose-asm -I source 19 @ options enabled: -faggressive-loop-optimizations -fauto-inc-dec 20 @ -fbranch-count-reg -fcommon -fdata-sections -fdelete-null-pointer-checks 21 @ -fdwarf2-cfi-asm -fearly-inlining -feliminate-unused-debug-types 22 @ -fexceptions -ffunction-cse -ffunction-sections -fgcse-lm -fgnu-runtime 23 @ -fident -finline-atomics -fira-hoist-pressure -fira-share-save-slots 24 @ -fira-share-spill-slots -fivopts -fkeep-static-consts 25 @ -fleading-underscore -fmerge-debug-strings -fmove-loop-invariants 26 @ -fpeephole -fprefetch-loop-arrays -freg-struct-return 27 @ -fsched-critical-path-heuristic -fsched-dep-count-heuristic 28 @ -fsched-group-heuristic -fsched-interblock -fsched-last-insn-heuristic 29 @ -fsched-rank-heuristic -fsched-spec -fsched-spec-insn-heuristic 30 @ -fsched-stalled-insns-dep -fshow-column -fsigned-zeros 31 @ -fsplit-ivs-in-unroller -fstrict-volatile-bitfields -fsync-libcalls 32 @ -ftrapping-math -ftree-coalesce-vars -ftree-cselim -ftree-forwprop 33 @ -ftree-loop-if-convert -ftree-loop-im -ftree-loop-ivcanon 34 @ -ftree-loop-optimize -ftree-parallelize-loops= -ftree-phiprop -ftree-pta 35 @ -ftree-reassoc -ftree-scev-cprop -ftree-slp-vectorize 36 @ -ftree-vect-loop-version -funit-at-a-time -fverbose-asm 37 @ -fzero-initialized-in-bss -mlittle-endian -msched-prolog -mthumb 38 @ -munaligned-access -mvectorize-with-neon-quad 39 40 .global ResetHandler 41 .section .rodata.ResetHandler,"a",%progbits 42 .align 2 45 ResetHandler: 46 0000 00000000 .word OnReset 47 .section .text._D5start11SendCommandFiPvZv,"ax",%progbits 48 .align 2 49 .global _D5start11SendCommandFiPvZv 50 .thumb 51 .thumb_func 53 _D5start11SendCommandFiPvZv: 54 .fnstart 55 .LFB0: 56 @ args = 0, pretend = 0, frame = 8 57 @ frame_needed = 1, uses_anonymous_args = 0 58 @ link register save eliminated. 59 0000 80B4 push {r7} @ 60 0002 83B0 sub sp, sp, #12 @,, 61 0004 00AF add r7, sp, #0 @,, 62 0006 7860 str r0, [r7, #4] @ command, command 63 0008 3960 str r1, [r7] @ message, message 64 000a 7B68 ldr r3, [r7, #4] @ tmp110, command 65 000c 3A68 ldr r2, [r7] @ tmp111, message 66 @ 32 "source/start.d" 1 67 000e 1846 mov r0, r3; @ tmp110 68 0010 1146 mov r1, r2; @ tmp111 69 0012 ABBE bkpt #0xAB 70 @ 0 "" 2 71 .thumb 72 0014 0C37 adds r7, r7, #12 @,, 73 0016 BD46 mov sp, r7 @, 74 @ sp needed @ 75 0018 5DF8047B ldr r7, [sp], #4 @, 76 001c 7047 bx lr @ 77 .cantunwind 78 .fnend 80 001e 00BF .section .rodata 81 .align 2 82 .LC0: 83 0000 48656C6C .ascii "Hello, World!\015\012\000" 83 6F2C2057 83 6F726C64 83 210D0A00 84 .align 2 85 .LC1: 86 0010 02000000 .word 2 87 0014 00000000 .word .LC0 88 0018 0F000000 .word 15 89 .section .text.OnReset,"ax",%progbits 90 .align 2 91 .global OnReset 92 .thumb 93 .thumb_func 95 OnReset: 96 .fnstart 97 .LFB1: 98 @ args = 0, pretend = 0, frame = 16 99 @ frame_needed = 1, uses_anonymous_args = 0 100 0000 90B5 push {r4, r7, lr} @ 101 0002 85B0 sub sp, sp, #20 @,, 102 0004 00AF add r7, sp, #0 @,, 103 0006 40F20003 movw r3, #:lower16:.LC1 @ tmp111, 104 000a C0F20003 movt r3, #:upper16:.LC1 @ tmp111, 105 000e 3C1D adds r4, r7, #4 @ tmp112,, 106 0010 93E80700 ldmia r3, {r0, r1, r2} @ tmp113,,, 107 0014 84E80700 stmia r4, {r0, r1, r2} @ tmp112,,, 108 .L4: 109 0018 0023 movs r3, #0 @ D.3568, 110 001a 002B cmp r3, #0 @ D.3568, 111 001c 05D1 bne .L2 @, 112 001e 3B1D adds r3, r7, #4 @ tmp114,, 113 0020 0520 movs r0, #5 @, 114 0022 1946 mov r1, r3 @, tmp114 115 0024 FFF7FEFF bl _D5start11SendCommandFiPvZv @ 116 0028 F6E7 b .L4 @ 117 .L2: 118 002a 1437 adds r7, r7, #20 @,, 119 002c BD46 mov sp, r7 @, 120 @ sp needed @ 121 002e 90BD pop {r4, r7, pc} @ 122 .cantunwind 123 .fnend 125 .ident "GCC: (GNU) 4.8.2"