Subversion Repositories dashGPS

Rev

Rev 16 | Rev 19 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
16 mjames 1
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 1
2
 
3
 
4
   1              		.cpu cortex-m3
5
   2              		.eabi_attribute 20, 1
6
   3              		.eabi_attribute 21, 1
7
   4              		.eabi_attribute 23, 3
8
   5              		.eabi_attribute 24, 1
9
   6              		.eabi_attribute 25, 1
10
   7              		.eabi_attribute 26, 1
11
   8              		.eabi_attribute 30, 1
12
   9              		.eabi_attribute 34, 1
13
  10              		.eabi_attribute 18, 4
14
  11              		.file	"small_printf.c"
15
  12              		.text
16
  13              	.Ltext0:
17
  14              		.cfi_sections	.debug_frame
18
  15              		.section	.text.printchar,"ax",%progbits
19
  16              		.align	1
20
  17              		.arch armv7-m
21
  18              		.syntax unified
22
  19              		.thumb
23
  20              		.thumb_func
24
  21              		.fpu softvfp
25
  23              	printchar:
26
  24              	.LVL0:
27
  25              	.LFB3:
28
  26              		.file 1 "../libSmallPrintf/src/small_printf.c"
29
   1:../libSmallPrintf/src/small_printf.c **** /*
30
   2:../libSmallPrintf/src/small_printf.c **** 	Copyright 2001, 2002 Georges Menie (www.menie.org)
31
   3:../libSmallPrintf/src/small_printf.c **** 	stdarg version contributed by Christian Ettinger
32
   4:../libSmallPrintf/src/small_printf.c **** 
33
   5:../libSmallPrintf/src/small_printf.c ****     This program is free software; you can redistribute it and/or modify
34
   6:../libSmallPrintf/src/small_printf.c ****     it under the terms of the GNU Lesser General Public License as published by
35
   7:../libSmallPrintf/src/small_printf.c ****     the Free Software Foundation; either version 2 of the License, or
36
   8:../libSmallPrintf/src/small_printf.c ****     (at your option) any later version.
37
   9:../libSmallPrintf/src/small_printf.c **** 
38
  10:../libSmallPrintf/src/small_printf.c ****     This program is distributed in the hope that it will be useful,
39
  11:../libSmallPrintf/src/small_printf.c ****     but WITHOUT ANY WARRANTY; without even the implied warranty of
40
  12:../libSmallPrintf/src/small_printf.c ****     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
41
  13:../libSmallPrintf/src/small_printf.c ****     GNU Lesser General Public License for more details.
42
  14:../libSmallPrintf/src/small_printf.c **** 
43
  15:../libSmallPrintf/src/small_printf.c ****     You should have received a copy of the GNU Lesser General Public License
44
  16:../libSmallPrintf/src/small_printf.c ****     along with this program; if not, write to the Free Software
45
  17:../libSmallPrintf/src/small_printf.c ****     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
46
  18:../libSmallPrintf/src/small_printf.c **** */
47
  19:../libSmallPrintf/src/small_printf.c **** 
48
  20:../libSmallPrintf/src/small_printf.c **** /* Includes */
49
  21:../libSmallPrintf/src/small_printf.c **** 
50
  22:../libSmallPrintf/src/small_printf.c **** 
51
  23:../libSmallPrintf/src/small_printf.c **** #include "libSmallPrintf/small_printf.h"
52
  24:../libSmallPrintf/src/small_printf.c **** 
53
  25:../libSmallPrintf/src/small_printf.c **** #include <stdarg.h>
54
  26:../libSmallPrintf/src/small_printf.c **** #include <stdio.h>
55
  27:../libSmallPrintf/src/small_printf.c **** #include <string.h>
56
  28:../libSmallPrintf/src/small_printf.c **** 
57
  29:../libSmallPrintf/src/small_printf.c **** /*
58
  30:../libSmallPrintf/src/small_printf.c **** 	putchar is the only external dependency for this file,
59
  31:../libSmallPrintf/src/small_printf.c **** 	if you have a working putchar, leave it commented out.
60
  32:../libSmallPrintf/src/small_printf.c **** 	If not, uncomment the define below and
61
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 2
62
 
63
 
64
  33:../libSmallPrintf/src/small_printf.c **** 	replace outbyte(c) by your own function call.
65
  34:../libSmallPrintf/src/small_printf.c **** */
66
  35:../libSmallPrintf/src/small_printf.c **** 
67
  36:../libSmallPrintf/src/small_printf.c **** 
68
  37:../libSmallPrintf/src/small_printf.c **** 
69
  38:../libSmallPrintf/src/small_printf.c **** static void printchar(char **str, int c)
70
  39:../libSmallPrintf/src/small_printf.c **** {
71
  27              		.loc 1 39 1 view -0
72
  28              		.cfi_startproc
73
  29              		@ args = 0, pretend = 0, frame = 0
74
  30              		@ frame_needed = 0, uses_anonymous_args = 0
75
  31              		.loc 1 39 1 is_stmt 0 view .LVU1
76
  32 0000 08B5     		push	{r3, lr}
77
  33              	.LCFI0:
78
  34              		.cfi_def_cfa_offset 8
79
  35              		.cfi_offset 3, -8
80
  36              		.cfi_offset 14, -4
81
  40:../libSmallPrintf/src/small_printf.c **** 
82
  41:../libSmallPrintf/src/small_printf.c **** 
83
  42:../libSmallPrintf/src/small_printf.c **** 	if (str) {
84
  37              		.loc 1 42 2 is_stmt 1 view .LVU2
85
  38              		.loc 1 42 5 is_stmt 0 view .LVU3
86
  39 0002 28B1     		cbz	r0, .L2
87
  43:../libSmallPrintf/src/small_printf.c **** 		**str = c;
88
  40              		.loc 1 43 3 is_stmt 1 view .LVU4
89
  41              		.loc 1 43 4 is_stmt 0 view .LVU5
90
  42 0004 0268     		ldr	r2, [r0]
91
  43              		.loc 1 43 9 view .LVU6
92
  44 0006 1170     		strb	r1, [r2]
93
  44:../libSmallPrintf/src/small_printf.c **** 		++(*str);
94
  45              		.loc 1 44 3 is_stmt 1 view .LVU7
95
  46              		.loc 1 44 6 is_stmt 0 view .LVU8
96
  47 0008 0268     		ldr	r2, [r0]
97
  48              		.loc 1 44 3 view .LVU9
98
  49 000a 0132     		adds	r2, r2, #1
99
  50 000c 0260     		str	r2, [r0]
100
  51              	.LVL1:
101
  52              	.L1:
102
  45:../libSmallPrintf/src/small_printf.c **** 	}
103
  46:../libSmallPrintf/src/small_printf.c **** 	else (void)PutCharSerial(c);
104
  47:../libSmallPrintf/src/small_printf.c **** }
105
  53              		.loc 1 47 1 view .LVU10
106
  54 000e 08BD     		pop	{r3, pc}
107
  55              	.LVL2:
108
  56              	.L2:
109
  57              		.loc 1 47 1 view .LVU11
110
  58 0010 0846     		mov	r0, r1
111
  59              	.LVL3:
112
  60              	.LBB2:
113
  46:../libSmallPrintf/src/small_printf.c **** }
114
  61              		.loc 1 46 7 is_stmt 1 view .LVU12
115
  46:../libSmallPrintf/src/small_printf.c **** }
116
  62              		.loc 1 46 13 is_stmt 0 view .LVU13
117
  63 0012 FFF7FEFF 		bl	PutCharSerial
118
  64              	.LVL4:
119
  46:../libSmallPrintf/src/small_printf.c **** }
120
  65              		.loc 1 46 13 view .LVU14
121
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 3
122
 
123
 
124
  66              	.LBE2:
125
  67              		.loc 1 47 1 view .LVU15
126
  68 0016 FAE7     		b	.L1
127
  69              		.cfi_endproc
128
  70              	.LFE3:
129
  72              		.section	.text.prints,"ax",%progbits
130
  73              		.align	1
131
  74              		.syntax unified
132
  75              		.thumb
133
  76              		.thumb_func
134
  77              		.fpu softvfp
135
  79              	prints:
136
  80              	.LVL5:
137
  81              	.LFB4:
138
  48:../libSmallPrintf/src/small_printf.c **** 
139
  49:../libSmallPrintf/src/small_printf.c **** #define PAD_RIGHT 1
140
  50:../libSmallPrintf/src/small_printf.c **** #define PAD_ZERO 2
141
  51:../libSmallPrintf/src/small_printf.c **** 
142
  52:../libSmallPrintf/src/small_printf.c **** static int prints(char **out, const char *string, int width, int pad)
143
  53:../libSmallPrintf/src/small_printf.c **** {
144
  82              		.loc 1 53 1 is_stmt 1 view -0
145
  83              		.cfi_startproc
146
  84              		@ args = 0, pretend = 0, frame = 0
147
  85              		@ frame_needed = 0, uses_anonymous_args = 0
148
  86              		.loc 1 53 1 is_stmt 0 view .LVU17
149
  87 0000 2DE9F041 		push	{r4, r5, r6, r7, r8, lr}
150
  88              	.LCFI1:
151
  89              		.cfi_def_cfa_offset 24
152
  90              		.cfi_offset 4, -24
153
  91              		.cfi_offset 5, -20
154
  92              		.cfi_offset 6, -16
155
  93              		.cfi_offset 7, -12
156
  94              		.cfi_offset 8, -8
157
  95              		.cfi_offset 14, -4
158
  96 0004 0746     		mov	r7, r0
159
  97 0006 0E46     		mov	r6, r1
160
  54:../libSmallPrintf/src/small_printf.c **** 	register int pc = 0, padchar = ' ';
161
  98              		.loc 1 54 2 is_stmt 1 view .LVU18
162
  99              	.LVL6:
163
  55:../libSmallPrintf/src/small_printf.c **** 
164
  56:../libSmallPrintf/src/small_printf.c **** 	if (width > 0) {
165
 100              		.loc 1 56 2 view .LVU19
166
 101              		.loc 1 56 5 is_stmt 0 view .LVU20
167
 102 0008 151E     		subs	r5, r2, #0
168
 103 000a 06DD     		ble	.L21
169
 104              	.LBB3:
170
  57:../libSmallPrintf/src/small_printf.c **** 		register int len = 0;
171
  58:../libSmallPrintf/src/small_printf.c **** 		register const char *ptr;
172
  59:../libSmallPrintf/src/small_printf.c **** 		for (ptr = string; *ptr; ++ptr) ++len;
173
 105              		.loc 1 59 12 view .LVU21
174
 106 000c 0A46     		mov	r2, r1
175
 107              	.LVL7:
176
  57:../libSmallPrintf/src/small_printf.c **** 		register int len = 0;
177
 108              		.loc 1 57 16 view .LVU22
178
 109 000e 0021     		movs	r1, #0
179
 110              	.LVL8:
180
 111              	.L6:
181
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 4
182
 
183
 
184
 112              		.loc 1 59 22 discriminator 1 view .LVU23
185
 113 0010 1078     		ldrb	r0, [r2]	@ zero_extendqisi2
186
 114              		.loc 1 59 3 discriminator 1 view .LVU24
187
 115 0012 80B1     		cbz	r0, .L22
188
 116              		.loc 1 59 35 is_stmt 1 discriminator 3 view .LVU25
189
 117 0014 0131     		adds	r1, r1, #1
190
 118              	.LVL9:
191
 119              		.loc 1 59 28 is_stmt 0 discriminator 3 view .LVU26
192
 120 0016 0132     		adds	r2, r2, #1
193
 121              	.LVL10:
194
 122              		.loc 1 59 28 discriminator 3 view .LVU27
195
 123 0018 FAE7     		b	.L6
196
 124              	.LVL11:
197
 125              	.L21:
198
 126              		.loc 1 59 28 discriminator 3 view .LVU28
199
 127              	.LBE3:
200
  54:../libSmallPrintf/src/small_printf.c **** 
201
 128              		.loc 1 54 23 view .LVU29
202
 129 001a 4FF02008 		mov	r8, #32
203
 130              	.LVL12:
204
 131              	.L7:
205
  60:../libSmallPrintf/src/small_printf.c **** 		if (len >= width) width = 0;
206
  61:../libSmallPrintf/src/small_printf.c **** 		else width -= len;
207
  62:../libSmallPrintf/src/small_printf.c **** 		if (pad & PAD_ZERO) padchar = '0';
208
  63:../libSmallPrintf/src/small_printf.c **** 	}
209
  64:../libSmallPrintf/src/small_printf.c **** 	if (!(pad & PAD_RIGHT)) {
210
 132              		.loc 1 64 2 is_stmt 1 view .LVU30
211
 133              		.loc 1 64 5 is_stmt 0 view .LVU31
212
 134 001e 13F00104 		ands	r4, r3, #1
213
 135 0022 1CD0     		beq	.L10
214
  54:../libSmallPrintf/src/small_printf.c **** 
215
 136              		.loc 1 54 15 view .LVU32
216
 137 0024 0024     		movs	r4, #0
217
 138              	.LVL13:
218
 139              	.L13:
219
  65:../libSmallPrintf/src/small_printf.c **** 		for ( ; width > 0; --width) {
220
  66:../libSmallPrintf/src/small_printf.c **** 			printchar (out, padchar);
221
  67:../libSmallPrintf/src/small_printf.c **** 			++pc;
222
  68:../libSmallPrintf/src/small_printf.c **** 		}
223
  69:../libSmallPrintf/src/small_printf.c **** 	}
224
  70:../libSmallPrintf/src/small_printf.c **** 	for ( ; *string ; ++string) {
225
 140              		.loc 1 70 10 discriminator 1 view .LVU33
226
 141 0026 3178     		ldrb	r1, [r6]	@ zero_extendqisi2
227
 142              		.loc 1 70 2 discriminator 1 view .LVU34
228
 143 0028 11B3     		cbz	r1, .L15
229
  71:../libSmallPrintf/src/small_printf.c **** 		printchar (out, *string);
230
 144              		.loc 1 71 3 is_stmt 1 discriminator 2 view .LVU35
231
 145 002a 3846     		mov	r0, r7
232
 146 002c FFF7FEFF 		bl	printchar
233
 147              	.LVL14:
234
  72:../libSmallPrintf/src/small_printf.c **** 		++pc;
235
 148              		.loc 1 72 3 discriminator 2 view .LVU36
236
 149 0030 0134     		adds	r4, r4, #1
237
 150              	.LVL15:
238
  70:../libSmallPrintf/src/small_printf.c **** 		printchar (out, *string);
239
 151              		.loc 1 70 20 is_stmt 0 discriminator 2 view .LVU37
240
 152 0032 0136     		adds	r6, r6, #1
241
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 5
242
 
243
 
244
 153              	.LVL16:
245
  70:../libSmallPrintf/src/small_printf.c **** 		printchar (out, *string);
246
 154              		.loc 1 70 20 discriminator 2 view .LVU38
247
 155 0034 F7E7     		b	.L13
248
 156              	.LVL17:
249
 157              	.L22:
250
 158              	.LBB4:
251
  60:../libSmallPrintf/src/small_printf.c **** 		else width -= len;
252
 159              		.loc 1 60 3 is_stmt 1 view .LVU39
253
  60:../libSmallPrintf/src/small_printf.c **** 		else width -= len;
254
 160              		.loc 1 60 6 is_stmt 0 view .LVU40
255
 161 0036 A942     		cmp	r1, r5
256
 162 0038 01DA     		bge	.L18
257
  61:../libSmallPrintf/src/small_printf.c **** 		if (pad & PAD_ZERO) padchar = '0';
258
 163              		.loc 1 61 8 is_stmt 1 view .LVU41
259
  61:../libSmallPrintf/src/small_printf.c **** 		if (pad & PAD_ZERO) padchar = '0';
260
 164              		.loc 1 61 14 is_stmt 0 view .LVU42
261
 165 003a 6D1A     		subs	r5, r5, r1
262
 166              	.LVL18:
263
  61:../libSmallPrintf/src/small_printf.c **** 		if (pad & PAD_ZERO) padchar = '0';
264
 167              		.loc 1 61 14 view .LVU43
265
 168 003c 00E0     		b	.L9
266
 169              	.L18:
267
  60:../libSmallPrintf/src/small_printf.c **** 		else width -= len;
268
 170              		.loc 1 60 27 view .LVU44
269
 171 003e 0025     		movs	r5, #0
270
 172              	.LVL19:
271
 173              	.L9:
272
  62:../libSmallPrintf/src/small_printf.c **** 	}
273
 174              		.loc 1 62 3 is_stmt 1 view .LVU45
274
  62:../libSmallPrintf/src/small_printf.c **** 	}
275
 175              		.loc 1 62 6 is_stmt 0 view .LVU46
276
 176 0040 13F0020F 		tst	r3, #2
277
 177 0044 02D1     		bne	.L19
278
 178              	.LBE4:
279
  54:../libSmallPrintf/src/small_printf.c **** 
280
 179              		.loc 1 54 23 view .LVU47
281
 180 0046 4FF02008 		mov	r8, #32
282
 181 004a E8E7     		b	.L7
283
 182              	.L19:
284
 183              	.LBB5:
285
  62:../libSmallPrintf/src/small_printf.c **** 	}
286
 184              		.loc 1 62 31 view .LVU48
287
 185 004c 4FF03008 		mov	r8, #48
288
 186 0050 E5E7     		b	.L7
289
 187              	.LVL20:
290
 188              	.L12:
291
  62:../libSmallPrintf/src/small_printf.c **** 	}
292
 189              		.loc 1 62 31 view .LVU49
293
 190              	.LBE5:
294
  66:../libSmallPrintf/src/small_printf.c **** 			++pc;
295
 191              		.loc 1 66 4 is_stmt 1 discriminator 2 view .LVU50
296
 192 0052 4146     		mov	r1, r8
297
 193 0054 3846     		mov	r0, r7
298
 194 0056 FFF7FEFF 		bl	printchar
299
 195              	.LVL21:
300
  67:../libSmallPrintf/src/small_printf.c **** 		}
301
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 6
302
 
303
 
304
 196              		.loc 1 67 4 discriminator 2 view .LVU51
305
 197 005a 0134     		adds	r4, r4, #1
306
 198              	.LVL22:
307
  65:../libSmallPrintf/src/small_printf.c **** 			printchar (out, padchar);
308
 199              		.loc 1 65 22 is_stmt 0 discriminator 2 view .LVU52
309
 200 005c 013D     		subs	r5, r5, #1
310
 201              	.LVL23:
311
 202              	.L10:
312
  65:../libSmallPrintf/src/small_printf.c **** 			printchar (out, padchar);
313
 203              		.loc 1 65 3 discriminator 1 view .LVU53
314
 204 005e 002D     		cmp	r5, #0
315
 205 0060 F7DC     		bgt	.L12
316
  65:../libSmallPrintf/src/small_printf.c **** 			printchar (out, padchar);
317
 206              		.loc 1 65 3 discriminator 1 view .LVU54
318
 207 0062 E0E7     		b	.L13
319
 208              	.L16:
320
  73:../libSmallPrintf/src/small_printf.c **** 	}
321
  74:../libSmallPrintf/src/small_printf.c **** 	for ( ; width > 0; --width) {
322
  75:../libSmallPrintf/src/small_printf.c **** 		printchar (out, padchar);
323
 209              		.loc 1 75 3 is_stmt 1 discriminator 2 view .LVU55
324
 210 0064 4146     		mov	r1, r8
325
 211 0066 3846     		mov	r0, r7
326
 212 0068 FFF7FEFF 		bl	printchar
327
 213              	.LVL24:
328
  76:../libSmallPrintf/src/small_printf.c **** 		++pc;
329
 214              		.loc 1 76 3 discriminator 2 view .LVU56
330
 215 006c 0134     		adds	r4, r4, #1
331
 216              	.LVL25:
332
  74:../libSmallPrintf/src/small_printf.c **** 		printchar (out, padchar);
333
 217              		.loc 1 74 21 is_stmt 0 discriminator 2 view .LVU57
334
 218 006e 013D     		subs	r5, r5, #1
335
 219              	.LVL26:
336
 220              	.L15:
337
  74:../libSmallPrintf/src/small_printf.c **** 		printchar (out, padchar);
338
 221              		.loc 1 74 2 discriminator 1 view .LVU58
339
 222 0070 002D     		cmp	r5, #0
340
 223 0072 F7DC     		bgt	.L16
341
  77:../libSmallPrintf/src/small_printf.c **** 	}
342
  78:../libSmallPrintf/src/small_printf.c **** 
343
  79:../libSmallPrintf/src/small_printf.c **** 	return pc;
344
 224              		.loc 1 79 2 is_stmt 1 view .LVU59
345
  80:../libSmallPrintf/src/small_printf.c **** }
346
 225              		.loc 1 80 1 is_stmt 0 view .LVU60
347
 226 0074 2046     		mov	r0, r4
348
 227 0076 BDE8F081 		pop	{r4, r5, r6, r7, r8, pc}
349
 228              		.loc 1 80 1 view .LVU61
350
 229              		.cfi_endproc
351
 230              	.LFE4:
352
 232              		.section	.text.printi,"ax",%progbits
353
 233              		.align	1
354
 234              		.syntax unified
355
 235              		.thumb
356
 236              		.thumb_func
357
 237              		.fpu softvfp
358
 239              	printi:
359
 240              	.LVL27:
360
 241              	.LFB5:
361
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 7
362
 
363
 
364
  81:../libSmallPrintf/src/small_printf.c **** 
365
  82:../libSmallPrintf/src/small_printf.c **** /* the following should be enough for 32 bit int */
366
  83:../libSmallPrintf/src/small_printf.c **** #define PRINT_BUF_LEN 12
367
  84:../libSmallPrintf/src/small_printf.c **** 
368
  85:../libSmallPrintf/src/small_printf.c **** static int printi(char **out, int i, int b, int sg, int width, int pad, int letbase)
369
  86:../libSmallPrintf/src/small_printf.c **** {
370
 242              		.loc 1 86 1 is_stmt 1 view -0
371
 243              		.cfi_startproc
372
 244              		@ args = 12, pretend = 0, frame = 16
373
 245              		@ frame_needed = 0, uses_anonymous_args = 0
374
 246              		.loc 1 86 1 is_stmt 0 view .LVU63
375
 247 0000 F0B5     		push	{r4, r5, r6, r7, lr}
376
 248              	.LCFI2:
377
 249              		.cfi_def_cfa_offset 20
378
 250              		.cfi_offset 4, -20
379
 251              		.cfi_offset 5, -16
380
 252              		.cfi_offset 6, -12
381
 253              		.cfi_offset 7, -8
382
 254              		.cfi_offset 14, -4
383
 255 0002 85B0     		sub	sp, sp, #20
384
 256              	.LCFI3:
385
 257              		.cfi_def_cfa_offset 40
386
 258 0004 0746     		mov	r7, r0
387
 259 0006 0C98     		ldr	r0, [sp, #48]
388
 260              	.LVL28:
389
  87:../libSmallPrintf/src/small_printf.c **** 	char print_buf[PRINT_BUF_LEN];
390
 261              		.loc 1 87 2 is_stmt 1 view .LVU64
391
  88:../libSmallPrintf/src/small_printf.c **** 	register char *s;
392
 262              		.loc 1 88 2 view .LVU65
393
  89:../libSmallPrintf/src/small_printf.c **** 	register int t, neg = 0, pc = 0;
394
 263              		.loc 1 89 2 view .LVU66
395
  90:../libSmallPrintf/src/small_printf.c **** 	register unsigned int u = i;
396
 264              		.loc 1 90 2 view .LVU67
397
  91:../libSmallPrintf/src/small_printf.c **** 
398
  92:../libSmallPrintf/src/small_printf.c **** 	if (i == 0) {
399
 265              		.loc 1 92 2 view .LVU68
400
 266              		.loc 1 92 5 is_stmt 0 view .LVU69
401
 267 0008 59B1     		cbz	r1, .L35
402
 268 000a 1E46     		mov	r6, r3
403
 269 000c 0C46     		mov	r4, r1
404
  93:../libSmallPrintf/src/small_printf.c **** 		print_buf[0] = '0';
405
  94:../libSmallPrintf/src/small_printf.c **** 		print_buf[1] = '\0';
406
  95:../libSmallPrintf/src/small_printf.c **** 		return prints (out, print_buf, width, pad);
407
  96:../libSmallPrintf/src/small_printf.c **** 	}
408
  97:../libSmallPrintf/src/small_printf.c **** 
409
  98:../libSmallPrintf/src/small_printf.c **** 	if (sg && b == 10 && i < 0) {
410
 270              		.loc 1 98 2 is_stmt 1 view .LVU70
411
 271              		.loc 1 98 5 is_stmt 0 view .LVU71
412
 272 000e 13B1     		cbz	r3, .L26
413
 273              		.loc 1 98 9 discriminator 1 view .LVU72
414
 274 0010 0A2A     		cmp	r2, #10
415
 275 0012 13D0     		beq	.L36
416
  89:../libSmallPrintf/src/small_printf.c **** 	register unsigned int u = i;
417
 276              		.loc 1 89 18 view .LVU73
418
 277 0014 0026     		movs	r6, #0
419
 278              	.LVL29:
420
 279              	.L26:
421
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 8
422
 
423
 
424
  99:../libSmallPrintf/src/small_printf.c **** 		neg = 1;
425
 100:../libSmallPrintf/src/small_printf.c **** 		u = -i;
426
 101:../libSmallPrintf/src/small_printf.c **** 	}
427
 102:../libSmallPrintf/src/small_printf.c **** 
428
 103:../libSmallPrintf/src/small_printf.c **** 	s = print_buf + PRINT_BUF_LEN-1;
429
 280              		.loc 1 103 2 is_stmt 1 view .LVU74
430
 104:../libSmallPrintf/src/small_printf.c **** 	*s = '\0';
431
 281              		.loc 1 104 2 view .LVU75
432
 282              		.loc 1 104 5 is_stmt 0 view .LVU76
433
 283 0016 0023     		movs	r3, #0
434
 284              	.LVL30:
435
 285              		.loc 1 104 5 view .LVU77
436
 286 0018 8DF80F30 		strb	r3, [sp, #15]
437
 105:../libSmallPrintf/src/small_printf.c **** 
438
 106:../libSmallPrintf/src/small_printf.c **** 	while (u) {
439
 287              		.loc 1 106 2 is_stmt 1 view .LVU78
440
 103:../libSmallPrintf/src/small_printf.c **** 	*s = '\0';
441
 288              		.loc 1 103 4 is_stmt 0 view .LVU79
442
 289 001c 0DF10F05 		add	r5, sp, #15
443
 290              	.LVL31:
444
 291              		.loc 1 106 8 view .LVU80
445
 292 0020 18E0     		b	.L27
446
 293              	.LVL32:
447
 294              	.L35:
448
  93:../libSmallPrintf/src/small_printf.c **** 		print_buf[1] = '\0';
449
 295              		.loc 1 93 3 is_stmt 1 view .LVU81
450
  93:../libSmallPrintf/src/small_printf.c **** 		print_buf[1] = '\0';
451
 296              		.loc 1 93 16 is_stmt 0 view .LVU82
452
 297 0022 3023     		movs	r3, #48
453
 298              	.LVL33:
454
  93:../libSmallPrintf/src/small_printf.c **** 		print_buf[1] = '\0';
455
 299              		.loc 1 93 16 view .LVU83
456
 300 0024 8DF80430 		strb	r3, [sp, #4]
457
  94:../libSmallPrintf/src/small_printf.c **** 		return prints (out, print_buf, width, pad);
458
 301              		.loc 1 94 3 is_stmt 1 view .LVU84
459
  94:../libSmallPrintf/src/small_printf.c **** 		return prints (out, print_buf, width, pad);
460
 302              		.loc 1 94 16 is_stmt 0 view .LVU85
461
 303 0028 0023     		movs	r3, #0
462
 304 002a 8DF80530 		strb	r3, [sp, #5]
463
  95:../libSmallPrintf/src/small_printf.c **** 	}
464
 305              		.loc 1 95 3 is_stmt 1 view .LVU86
465
  95:../libSmallPrintf/src/small_printf.c **** 	}
466
 306              		.loc 1 95 10 is_stmt 0 view .LVU87
467
 307 002e 0B9B     		ldr	r3, [sp, #44]
468
 308 0030 0A9A     		ldr	r2, [sp, #40]
469
 309              	.LVL34:
470
  95:../libSmallPrintf/src/small_printf.c **** 	}
471
 310              		.loc 1 95 10 view .LVU88
472
 311 0032 01A9     		add	r1, sp, #4
473
 312              	.LVL35:
474
  95:../libSmallPrintf/src/small_printf.c **** 	}
475
 313              		.loc 1 95 10 view .LVU89
476
 314 0034 3846     		mov	r0, r7
477
 315 0036 FFF7FEFF 		bl	prints
478
 316              	.LVL36:
479
 317 003a 29E0     		b	.L23
480
 318              	.LVL37:
481
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 9
482
 
483
 
484
 319              	.L36:
485
  98:../libSmallPrintf/src/small_printf.c **** 		neg = 1;
486
 320              		.loc 1 98 20 discriminator 2 view .LVU90
487
 321 003c 0029     		cmp	r1, #0
488
 322 003e 01DB     		blt	.L37
489
  89:../libSmallPrintf/src/small_printf.c **** 	register unsigned int u = i;
490
 323              		.loc 1 89 18 view .LVU91
491
 324 0040 0026     		movs	r6, #0
492
 325 0042 E8E7     		b	.L26
493
 326              	.L37:
494
  99:../libSmallPrintf/src/small_printf.c **** 		u = -i;
495
 327              		.loc 1 99 3 is_stmt 1 view .LVU92
496
 328              	.LVL38:
497
 100:../libSmallPrintf/src/small_printf.c **** 	}
498
 329              		.loc 1 100 3 view .LVU93
499
 100:../libSmallPrintf/src/small_printf.c **** 	}
500
 330              		.loc 1 100 7 is_stmt 0 view .LVU94
501
 331 0044 4C42     		rsbs	r4, r1, #0
502
 332              	.LVL39:
503
  99:../libSmallPrintf/src/small_printf.c **** 		u = -i;
504
 333              		.loc 1 99 7 view .LVU95
505
 334 0046 0126     		movs	r6, #1
506
 335 0048 E5E7     		b	.L26
507
 336              	.LVL40:
508
 337              	.L28:
509
 107:../libSmallPrintf/src/small_printf.c **** 		t = u % b;
510
 108:../libSmallPrintf/src/small_printf.c **** 		if( t >= 10 )
511
 109:../libSmallPrintf/src/small_printf.c **** 			t += letbase - '0' - 10;
512
 110:../libSmallPrintf/src/small_printf.c **** 		*--s = t + '0';
513
 338              		.loc 1 110 3 is_stmt 1 view .LVU96
514
 339              		.loc 1 110 12 is_stmt 0 view .LVU97
515
 340 004a 3033     		adds	r3, r3, #48
516
 341              	.LVL41:
517
 342              		.loc 1 110 8 view .LVU98
518
 343 004c 05F8013D 		strb	r3, [r5, #-1]!
519
 344              	.LVL42:
520
 111:../libSmallPrintf/src/small_printf.c **** 		u /= b;
521
 345              		.loc 1 111 3 is_stmt 1 view .LVU99
522
 346              		.loc 1 111 5 is_stmt 0 view .LVU100
523
 347 0050 B4FBF2F4 		udiv	r4, r4, r2
524
 348              	.LVL43:
525
 349              	.L27:
526
 106:../libSmallPrintf/src/small_printf.c **** 		t = u % b;
527
 350              		.loc 1 106 8 view .LVU101
528
 351 0054 4CB1     		cbz	r4, .L38
529
 107:../libSmallPrintf/src/small_printf.c **** 		t = u % b;
530
 352              		.loc 1 107 3 is_stmt 1 view .LVU102
531
 107:../libSmallPrintf/src/small_printf.c **** 		t = u % b;
532
 353              		.loc 1 107 9 is_stmt 0 view .LVU103
533
 354 0056 B4FBF2F3 		udiv	r3, r4, r2
534
 355 005a 02FB1343 		mls	r3, r2, r3, r4
535
 356              	.LVL44:
536
 108:../libSmallPrintf/src/small_printf.c **** 			t += letbase - '0' - 10;
537
 357              		.loc 1 108 3 is_stmt 1 view .LVU104
538
 108:../libSmallPrintf/src/small_printf.c **** 			t += letbase - '0' - 10;
539
 358              		.loc 1 108 5 is_stmt 0 view .LVU105
540
 359 005e 092B     		cmp	r3, #9
541
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 10
542
 
543
 
544
 360 0060 F3DD     		ble	.L28
545
 109:../libSmallPrintf/src/small_printf.c **** 		*--s = t + '0';
546
 361              		.loc 1 109 4 is_stmt 1 view .LVU106
547
 109:../libSmallPrintf/src/small_printf.c **** 		*--s = t + '0';
548
 362              		.loc 1 109 23 is_stmt 0 view .LVU107
549
 363 0062 A0F13A01 		sub	r1, r0, #58
550
 109:../libSmallPrintf/src/small_printf.c **** 		*--s = t + '0';
551
 364              		.loc 1 109 6 view .LVU108
552
 365 0066 0B44     		add	r3, r3, r1
553
 366              	.LVL45:
554
 109:../libSmallPrintf/src/small_printf.c **** 		*--s = t + '0';
555
 367              		.loc 1 109 6 view .LVU109
556
 368 0068 EFE7     		b	.L28
557
 369              	.LVL46:
558
 370              	.L38:
559
 112:../libSmallPrintf/src/small_printf.c **** 	}
560
 113:../libSmallPrintf/src/small_printf.c **** 
561
 114:../libSmallPrintf/src/small_printf.c **** 	if (neg) {
562
 371              		.loc 1 114 2 is_stmt 1 view .LVU110
563
 372              		.loc 1 114 5 is_stmt 0 view .LVU111
564
 373 006a 56B1     		cbz	r6, .L30
565
 115:../libSmallPrintf/src/small_printf.c **** 		if( width && (pad & PAD_ZERO) ) {
566
 374              		.loc 1 115 3 is_stmt 1 view .LVU112
567
 375              		.loc 1 115 5 is_stmt 0 view .LVU113
568
 376 006c 0A9B     		ldr	r3, [sp, #40]
569
 377 006e 1BB1     		cbz	r3, .L31
570
 378              		.loc 1 115 13 discriminator 1 view .LVU114
571
 379 0070 0B9B     		ldr	r3, [sp, #44]
572
 380 0072 13F0020F 		tst	r3, #2
573
 381 0076 0DD1     		bne	.L39
574
 382              	.L31:
575
 116:../libSmallPrintf/src/small_printf.c **** 			printchar (out, '-');
576
 117:../libSmallPrintf/src/small_printf.c **** 			++pc;
577
 118:../libSmallPrintf/src/small_printf.c **** 			--width;
578
 119:../libSmallPrintf/src/small_printf.c **** 		}
579
 120:../libSmallPrintf/src/small_printf.c **** 		else {
580
 121:../libSmallPrintf/src/small_printf.c **** 			*--s = '-';
581
 383              		.loc 1 121 4 is_stmt 1 view .LVU115
582
 384              	.LVL47:
583
 385              		.loc 1 121 9 is_stmt 0 view .LVU116
584
 386 0078 2D23     		movs	r3, #45
585
 387 007a 05F8013C 		strb	r3, [r5, #-1]
586
 388 007e 013D     		subs	r5, r5, #1
587
 389              	.LVL48:
588
  89:../libSmallPrintf/src/small_printf.c **** 	register unsigned int u = i;
589
 390              		.loc 1 89 27 view .LVU117
590
 391 0080 0026     		movs	r6, #0
591
 392              	.LVL49:
592
 393              	.L30:
593
 122:../libSmallPrintf/src/small_printf.c **** 		}
594
 123:../libSmallPrintf/src/small_printf.c **** 	}
595
 124:../libSmallPrintf/src/small_printf.c **** 
596
 125:../libSmallPrintf/src/small_printf.c **** 	return pc + prints (out, s, width, pad);
597
 394              		.loc 1 125 2 is_stmt 1 view .LVU118
598
 395              		.loc 1 125 14 is_stmt 0 view .LVU119
599
 396 0082 0B9B     		ldr	r3, [sp, #44]
600
 397 0084 0A9A     		ldr	r2, [sp, #40]
601
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 11
602
 
603
 
604
 398 0086 2946     		mov	r1, r5
605
 399 0088 3846     		mov	r0, r7
606
 400 008a FFF7FEFF 		bl	prints
607
 401              	.LVL50:
608
 402              		.loc 1 125 12 view .LVU120
609
 403 008e 3044     		add	r0, r0, r6
610
 404              	.LVL51:
611
 405              	.L23:
612
 126:../libSmallPrintf/src/small_printf.c **** }
613
 406              		.loc 1 126 1 view .LVU121
614
 407 0090 05B0     		add	sp, sp, #20
615
 408              	.LCFI4:
616
 409              		.cfi_remember_state
617
 410              		.cfi_def_cfa_offset 20
618
 411              		@ sp needed
619
 412 0092 F0BD     		pop	{r4, r5, r6, r7, pc}
620
 413              	.LVL52:
621
 414              	.L39:
622
 415              	.LCFI5:
623
 416              		.cfi_restore_state
624
 116:../libSmallPrintf/src/small_printf.c **** 			++pc;
625
 417              		.loc 1 116 4 is_stmt 1 view .LVU122
626
 418 0094 2D21     		movs	r1, #45
627
 419 0096 3846     		mov	r0, r7
628
 420 0098 FFF7FEFF 		bl	printchar
629
 421              	.LVL53:
630
 117:../libSmallPrintf/src/small_printf.c **** 			--width;
631
 422              		.loc 1 117 4 view .LVU123
632
 118:../libSmallPrintf/src/small_printf.c **** 		}
633
 423              		.loc 1 118 4 view .LVU124
634
 424 009c 0A9B     		ldr	r3, [sp, #40]
635
 425 009e 013B     		subs	r3, r3, #1
636
 426 00a0 0A93     		str	r3, [sp, #40]
637
 427              	.LVL54:
638
 118:../libSmallPrintf/src/small_printf.c **** 		}
639
 428              		.loc 1 118 4 is_stmt 0 view .LVU125
640
 429 00a2 EEE7     		b	.L30
641
 430              		.cfi_endproc
642
 431              	.LFE5:
643
 433              		.section	.text.small_print,"ax",%progbits
644
 434              		.align	1
645
 435              		.syntax unified
646
 436              		.thumb
647
 437              		.thumb_func
648
 438              		.fpu softvfp
649
 440              	small_print:
650
 441              	.LVL55:
651
 442              	.LFB6:
652
 127:../libSmallPrintf/src/small_printf.c **** 
653
 128:../libSmallPrintf/src/small_printf.c **** static int small_print(char **out, const char *format, va_list args )
654
 129:../libSmallPrintf/src/small_printf.c **** {
655
 443              		.loc 1 129 1 is_stmt 1 view -0
656
 444              		.cfi_startproc
657
 445              		@ args = 0, pretend = 0, frame = 16
658
 446              		@ frame_needed = 0, uses_anonymous_args = 0
659
 447              		.loc 1 129 1 is_stmt 0 view .LVU127
660
 448 0000 70B5     		push	{r4, r5, r6, lr}
661
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 12
662
 
663
 
664
 449              	.LCFI6:
665
 450              		.cfi_def_cfa_offset 16
666
 451              		.cfi_offset 4, -16
667
 452              		.cfi_offset 5, -12
668
 453              		.cfi_offset 6, -8
669
 454              		.cfi_offset 14, -4
670
 455 0002 88B0     		sub	sp, sp, #32
671
 456              	.LCFI7:
672
 457              		.cfi_def_cfa_offset 48
673
 458 0004 0646     		mov	r6, r0
674
 459 0006 0C46     		mov	r4, r1
675
 460 0008 0592     		str	r2, [sp, #20]
676
 130:../libSmallPrintf/src/small_printf.c **** 	register int width, pad;
677
 461              		.loc 1 130 2 is_stmt 1 view .LVU128
678
 131:../libSmallPrintf/src/small_printf.c **** 	register int pc = 0;
679
 462              		.loc 1 131 2 view .LVU129
680
 463              	.LVL56:
681
 132:../libSmallPrintf/src/small_printf.c **** 	char scr[2];
682
 464              		.loc 1 132 2 view .LVU130
683
 133:../libSmallPrintf/src/small_printf.c **** 
684
 134:../libSmallPrintf/src/small_printf.c **** 	for (; *format != 0; ++format) {
685
 465              		.loc 1 134 2 view .LVU131
686
 131:../libSmallPrintf/src/small_printf.c **** 	char scr[2];
687
 466              		.loc 1 131 15 is_stmt 0 view .LVU132
688
 467 000a 0025     		movs	r5, #0
689
 468              		.loc 1 134 2 view .LVU133
690
 469 000c A9E0     		b	.L41
691
 470              	.LVL57:
692
 471              	.L76:
693
 135:../libSmallPrintf/src/small_printf.c **** 		if (*format == '%') {
694
 136:../libSmallPrintf/src/small_printf.c **** 			++format;
695
 472              		.loc 1 136 4 is_stmt 1 view .LVU134
696
 473 000e 611C     		adds	r1, r4, #1
697
 474              	.LVL58:
698
 137:../libSmallPrintf/src/small_printf.c **** 			width = pad = 0;
699
 475              		.loc 1 137 4 view .LVU135
700
 138:../libSmallPrintf/src/small_printf.c **** 			if (*format == '\0') break;
701
 476              		.loc 1 138 4 view .LVU136
702
 477              		.loc 1 138 8 is_stmt 0 view .LVU137
703
 478 0010 6378     		ldrb	r3, [r4, #1]	@ zero_extendqisi2
704
 479              		.loc 1 138 7 view .LVU138
705
 480 0012 002B     		cmp	r3, #0
706
 481 0014 00F0AE80 		beq	.L43
707
 139:../libSmallPrintf/src/small_printf.c **** 			if (*format == '%') goto out;
708
 482              		.loc 1 139 4 is_stmt 1 view .LVU139
709
 483              		.loc 1 139 7 is_stmt 0 view .LVU140
710
 484 0018 252B     		cmp	r3, #37
711
 485 001a 00F09580 		beq	.L62
712
 140:../libSmallPrintf/src/small_printf.c **** 			if (*format == '-') {
713
 486              		.loc 1 140 4 is_stmt 1 view .LVU141
714
 487              		.loc 1 140 7 is_stmt 0 view .LVU142
715
 488 001e 2D2B     		cmp	r3, #45
716
 489 0020 07D0     		beq	.L67
717
 137:../libSmallPrintf/src/small_printf.c **** 			if (*format == '\0') break;
718
 490              		.loc 1 137 16 view .LVU143
719
 491 0022 0023     		movs	r3, #0
720
 492              	.LVL59:
721
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 13
722
 
723
 
724
 493              	.L45:
725
 141:../libSmallPrintf/src/small_printf.c **** 				++format;
726
 142:../libSmallPrintf/src/small_printf.c **** 				pad = PAD_RIGHT;
727
 143:../libSmallPrintf/src/small_printf.c **** 			}
728
 144:../libSmallPrintf/src/small_printf.c **** 			while (*format == '0') {
729
 494              		.loc 1 144 11 view .LVU144
730
 495 0024 0A78     		ldrb	r2, [r1]	@ zero_extendqisi2
731
 496              		.loc 1 144 10 view .LVU145
732
 497 0026 302A     		cmp	r2, #48
733
 498 0028 06D1     		bne	.L68
734
 145:../libSmallPrintf/src/small_printf.c **** 				++format;
735
 499              		.loc 1 145 5 is_stmt 1 view .LVU146
736
 500 002a 0131     		adds	r1, r1, #1
737
 501              	.LVL60:
738
 146:../libSmallPrintf/src/small_printf.c **** 				pad |= PAD_ZERO;
739
 502              		.loc 1 146 5 view .LVU147
740
 503              		.loc 1 146 9 is_stmt 0 view .LVU148
741
 504 002c 43F00203 		orr	r3, r3, #2
742
 505              	.LVL61:
743
 506              		.loc 1 146 9 view .LVU149
744
 507 0030 F8E7     		b	.L45
745
 508              	.LVL62:
746
 509              	.L67:
747
 141:../libSmallPrintf/src/small_printf.c **** 				++format;
748
 510              		.loc 1 141 5 is_stmt 1 view .LVU150
749
 511 0032 A11C     		adds	r1, r4, #2
750
 512              	.LVL63:
751
 142:../libSmallPrintf/src/small_printf.c **** 			}
752
 513              		.loc 1 142 5 view .LVU151
753
 142:../libSmallPrintf/src/small_printf.c **** 			}
754
 514              		.loc 1 142 9 is_stmt 0 view .LVU152
755
 515 0034 0123     		movs	r3, #1
756
 516 0036 F5E7     		b	.L45
757
 517              	.LVL64:
758
 518              	.L68:
759
 147:../libSmallPrintf/src/small_printf.c **** 			}
760
 148:../libSmallPrintf/src/small_printf.c **** 			if ('*' == *format)
761
 519              		.loc 1 148 4 is_stmt 1 view .LVU153
762
 520              		.loc 1 148 7 is_stmt 0 view .LVU154
763
 521 0038 2A2A     		cmp	r2, #42
764
 522 003a 2BD1     		bne	.L64
765
 149:../libSmallPrintf/src/small_printf.c **** 			{
766
 150:../libSmallPrintf/src/small_printf.c **** 				width = va_arg( args, int );	// get width from next argument
767
 523              		.loc 1 150 5 is_stmt 1 view .LVU155
768
 524              		.loc 1 150 11 is_stmt 0 view .LVU156
769
 525 003c 059A     		ldr	r2, [sp, #20]
770
 526 003e 101D     		adds	r0, r2, #4
771
 527 0040 0590     		str	r0, [sp, #20]
772
 528 0042 1268     		ldr	r2, [r2]
773
 529              	.LVL65:
774
 151:../libSmallPrintf/src/small_printf.c **** 				format++;
775
 530              		.loc 1 151 5 is_stmt 1 view .LVU157
776
 531              		.loc 1 151 11 is_stmt 0 view .LVU158
777
 532 0044 4C1C     		adds	r4, r1, #1
778
 533              	.LVL66:
779
 534              	.L48:
780
 152:../libSmallPrintf/src/small_printf.c **** 			}
781
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 14
782
 
783
 
784
 153:../libSmallPrintf/src/small_printf.c **** 			else
785
 154:../libSmallPrintf/src/small_printf.c **** 			{
786
 155:../libSmallPrintf/src/small_printf.c **** 				for ( ; *format >= '0' && *format <= '9'; ++format)
787
 156:../libSmallPrintf/src/small_printf.c **** 				{
788
 157:../libSmallPrintf/src/small_printf.c **** 					width *= 10;
789
 158:../libSmallPrintf/src/small_printf.c **** 					width += *format - '0';
790
 159:../libSmallPrintf/src/small_printf.c **** 				}
791
 160:../libSmallPrintf/src/small_printf.c **** 			}
792
 161:../libSmallPrintf/src/small_printf.c **** 			if( *format == 'l') { /* skip l in ld etc */
793
 535              		.loc 1 161 4 is_stmt 1 view .LVU159
794
 536              		.loc 1 161 8 is_stmt 0 view .LVU160
795
 537 0046 2178     		ldrb	r1, [r4]	@ zero_extendqisi2
796
 538              		.loc 1 161 6 view .LVU161
797
 539 0048 6C29     		cmp	r1, #108
798
 540 004a 25D0     		beq	.L69
799
 541              	.L50:
800
 162:../libSmallPrintf/src/small_printf.c **** 				format++;
801
 163:../libSmallPrintf/src/small_printf.c **** 			}
802
 164:../libSmallPrintf/src/small_printf.c **** 			if( *format == 's' ) {
803
 542              		.loc 1 164 4 is_stmt 1 view .LVU162
804
 543              		.loc 1 164 8 is_stmt 0 view .LVU163
805
 544 004c 2178     		ldrb	r1, [r4]	@ zero_extendqisi2
806
 545              		.loc 1 164 6 view .LVU164
807
 546 004e 7329     		cmp	r1, #115
808
 547 0050 24D0     		beq	.L70
809
 165:../libSmallPrintf/src/small_printf.c **** 				register char *s = (char *)va_arg( args, int );
810
 166:../libSmallPrintf/src/small_printf.c **** 				pc += prints (out, s?s:"(null)", width, pad);
811
 167:../libSmallPrintf/src/small_printf.c **** 				continue;
812
 168:../libSmallPrintf/src/small_printf.c **** 			}
813
 169:../libSmallPrintf/src/small_printf.c **** 			if( *format == 'd' ) {
814
 548              		.loc 1 169 4 is_stmt 1 view .LVU165
815
 549              		.loc 1 169 6 is_stmt 0 view .LVU166
816
 550 0052 6429     		cmp	r1, #100
817
 551 0054 2DD0     		beq	.L71
818
 170:../libSmallPrintf/src/small_printf.c **** 				pc += printi (out, va_arg( args, int ), 10, 1, width, pad, 'a');
819
 171:../libSmallPrintf/src/small_printf.c **** 				continue;
820
 172:../libSmallPrintf/src/small_printf.c **** 			}
821
 173:../libSmallPrintf/src/small_printf.c **** 			if( *format == 'x' ) {
822
 552              		.loc 1 173 4 is_stmt 1 view .LVU167
823
 553              		.loc 1 173 6 is_stmt 0 view .LVU168
824
 554 0056 7829     		cmp	r1, #120
825
 555 0058 3AD0     		beq	.L72
826
 174:../libSmallPrintf/src/small_printf.c **** 				pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a');
827
 175:../libSmallPrintf/src/small_printf.c **** 				continue;
828
 176:../libSmallPrintf/src/small_printf.c **** 			}
829
 177:../libSmallPrintf/src/small_printf.c **** 			if( *format == 'X' ) {
830
 556              		.loc 1 177 4 is_stmt 1 view .LVU169
831
 557              		.loc 1 177 6 is_stmt 0 view .LVU170
832
 558 005a 5829     		cmp	r1, #88
833
 559 005c 47D0     		beq	.L73
834
 178:../libSmallPrintf/src/small_printf.c **** 				pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'A');
835
 179:../libSmallPrintf/src/small_printf.c **** 				continue;
836
 180:../libSmallPrintf/src/small_printf.c **** 			}
837
 181:../libSmallPrintf/src/small_printf.c **** 			if( *format == 'u' ) {
838
 560              		.loc 1 181 4 is_stmt 1 view .LVU171
839
 561              		.loc 1 181 6 is_stmt 0 view .LVU172
840
 562 005e 7529     		cmp	r1, #117
841
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 15
842
 
843
 
844
 563 0060 54D0     		beq	.L74
845
 182:../libSmallPrintf/src/small_printf.c **** 				pc += printi (out, va_arg( args, int ), 10, 0, width, pad, 'a');
846
 183:../libSmallPrintf/src/small_printf.c **** 				continue;
847
 184:../libSmallPrintf/src/small_printf.c **** 			}
848
 185:../libSmallPrintf/src/small_printf.c **** 			if( *format == 'c' ) {
849
 564              		.loc 1 185 4 is_stmt 1 view .LVU173
850
 565              		.loc 1 185 6 is_stmt 0 view .LVU174
851
 566 0062 6329     		cmp	r1, #99
852
 567 0064 61D0     		beq	.L75
853
 186:../libSmallPrintf/src/small_printf.c **** 				/* char are converted to int then pushed on the stack */
854
 187:../libSmallPrintf/src/small_printf.c **** 				scr[0] = (char)va_arg( args, int );
855
 188:../libSmallPrintf/src/small_printf.c **** 				scr[1] = '\0';
856
 189:../libSmallPrintf/src/small_printf.c **** 				pc += prints (out, scr, width, pad);
857
 190:../libSmallPrintf/src/small_printf.c **** 				continue;
858
 191:../libSmallPrintf/src/small_printf.c **** 			}
859
 192:../libSmallPrintf/src/small_printf.c **** 			if( *format == 'n' )
860
 568              		.loc 1 192 4 is_stmt 1 view .LVU175
861
 569              		.loc 1 192 6 is_stmt 0 view .LVU176
862
 570 0066 6E29     		cmp	r1, #110
863
 571 0068 7AD1     		bne	.L53
864
 572              	.LBB6:
865
 193:../libSmallPrintf/src/small_printf.c **** 			{	/* convert number printed so far and store in *va_arg( args, int)... */
866
 194:../libSmallPrintf/src/small_printf.c **** 				int *dp = va_arg( args, int );
867
 573              		.loc 1 194 5 is_stmt 1 view .LVU177
868
 574              		.loc 1 194 15 is_stmt 0 view .LVU178
869
 575 006a 059B     		ldr	r3, [sp, #20]
870
 576              	.LVL67:
871
 577              		.loc 1 194 15 view .LVU179
872
 578 006c 1A1D     		adds	r2, r3, #4
873
 579              	.LVL68:
874
 580              		.loc 1 194 15 view .LVU180
875
 581 006e 0592     		str	r2, [sp, #20]
876
 582 0070 1B68     		ldr	r3, [r3]
877
 583              	.LVL69:
878
 195:../libSmallPrintf/src/small_printf.c **** 				*dp = pc;
879
 584              		.loc 1 195 5 is_stmt 1 view .LVU181
880
 585              		.loc 1 195 9 is_stmt 0 view .LVU182
881
 586 0072 1D60     		str	r5, [r3]
882
 196:../libSmallPrintf/src/small_printf.c **** 				continue;
883
 587              		.loc 1 196 5 is_stmt 1 view .LVU183
884
 588 0074 74E0     		b	.L53
885
 589              	.LVL70:
886
 590              	.L49:
887
 591              		.loc 1 196 5 is_stmt 0 view .LVU184
888
 592              	.LBE6:
889
 157:../libSmallPrintf/src/small_printf.c **** 					width += *format - '0';
890
 593              		.loc 1 157 6 is_stmt 1 discriminator 2 view .LVU185
891
 157:../libSmallPrintf/src/small_printf.c **** 					width += *format - '0';
892
 594              		.loc 1 157 12 is_stmt 0 discriminator 2 view .LVU186
893
 595 0076 02EB8202 		add	r2, r2, r2, lsl #2
894
 596              	.LVL71:
895
 157:../libSmallPrintf/src/small_printf.c **** 					width += *format - '0';
896
 597              		.loc 1 157 12 discriminator 2 view .LVU187
897
 598 007a 5400     		lsls	r4, r2, #1
898
 599              	.LVL72:
899
 158:../libSmallPrintf/src/small_printf.c **** 				}
900
 600              		.loc 1 158 6 is_stmt 1 discriminator 2 view .LVU188
901
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 16
902
 
903
 
904
 158:../libSmallPrintf/src/small_printf.c **** 				}
905
 601              		.loc 1 158 23 is_stmt 0 discriminator 2 view .LVU189
906
 602 007c A0F13002 		sub	r2, r0, #48
907
 158:../libSmallPrintf/src/small_printf.c **** 				}
908
 603              		.loc 1 158 12 discriminator 2 view .LVU190
909
 604 0080 2244     		add	r2, r2, r4
910
 605              	.LVL73:
911
 155:../libSmallPrintf/src/small_printf.c **** 				{
912
 606              		.loc 1 155 47 discriminator 2 view .LVU191
913
 607 0082 0131     		adds	r1, r1, #1
914
 608              	.LVL74:
915
 609              	.L47:
916
 155:../libSmallPrintf/src/small_printf.c **** 				{
917
 610              		.loc 1 155 13 discriminator 1 view .LVU192
918
 611 0084 0878     		ldrb	r0, [r1]	@ zero_extendqisi2
919
 155:../libSmallPrintf/src/small_printf.c **** 				{
920
 612              		.loc 1 155 28 discriminator 1 view .LVU193
921
 613 0086 A0F13004 		sub	r4, r0, #48
922
 614 008a E4B2     		uxtb	r4, r4
923
 155:../libSmallPrintf/src/small_printf.c **** 				{
924
 615              		.loc 1 155 5 discriminator 1 view .LVU194
925
 616 008c 092C     		cmp	r4, #9
926
 617 008e F2D9     		bls	.L49
927
 155:../libSmallPrintf/src/small_printf.c **** 				{
928
 618              		.loc 1 155 5 discriminator 1 view .LVU195
929
 619 0090 0C46     		mov	r4, r1
930
 620 0092 D8E7     		b	.L48
931
 621              	.LVL75:
932
 622              	.L64:
933
 137:../libSmallPrintf/src/small_printf.c **** 			if (*format == '\0') break;
934
 623              		.loc 1 137 10 view .LVU196
935
 624 0094 0022     		movs	r2, #0
936
 625 0096 F5E7     		b	.L47
937
 626              	.LVL76:
938
 627              	.L69:
939
 162:../libSmallPrintf/src/small_printf.c **** 			}
940
 628              		.loc 1 162 5 is_stmt 1 view .LVU197
941
 162:../libSmallPrintf/src/small_printf.c **** 			}
942
 629              		.loc 1 162 11 is_stmt 0 view .LVU198
943
 630 0098 0134     		adds	r4, r4, #1
944
 631              	.LVL77:
945
 162:../libSmallPrintf/src/small_printf.c **** 			}
946
 632              		.loc 1 162 11 view .LVU199
947
 633 009a D7E7     		b	.L50
948
 634              	.L70:
949
 635              	.LBB7:
950
 165:../libSmallPrintf/src/small_printf.c **** 				pc += prints (out, s?s:"(null)", width, pad);
951
 636              		.loc 1 165 5 is_stmt 1 view .LVU200
952
 165:../libSmallPrintf/src/small_printf.c **** 				pc += prints (out, s?s:"(null)", width, pad);
953
 637              		.loc 1 165 32 is_stmt 0 view .LVU201
954
 638 009c 0599     		ldr	r1, [sp, #20]
955
 639 009e 081D     		adds	r0, r1, #4
956
 640 00a0 0590     		str	r0, [sp, #20]
957
 641 00a2 0968     		ldr	r1, [r1]
958
 642              	.LVL78:
959
 166:../libSmallPrintf/src/small_printf.c **** 				continue;
960
 643              		.loc 1 166 5 is_stmt 1 view .LVU202
961
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 17
962
 
963
 
964
 166:../libSmallPrintf/src/small_printf.c **** 				continue;
965
 644              		.loc 1 166 11 is_stmt 0 view .LVU203
966
 645 00a4 01B9     		cbnz	r1, .L52
967
 646 00a6 3749     		ldr	r1, .L78
968
 647              	.LVL79:
969
 648              	.L52:
970
 166:../libSmallPrintf/src/small_printf.c **** 				continue;
971
 649              		.loc 1 166 11 discriminator 4 view .LVU204
972
 650 00a8 3046     		mov	r0, r6
973
 651              	.LVL80:
974
 166:../libSmallPrintf/src/small_printf.c **** 				continue;
975
 652              		.loc 1 166 11 discriminator 4 view .LVU205
976
 653 00aa FFF7FEFF 		bl	prints
977
 654              	.LVL81:
978
 166:../libSmallPrintf/src/small_printf.c **** 				continue;
979
 655              		.loc 1 166 8 discriminator 4 view .LVU206
980
 656 00ae 0544     		add	r5, r5, r0
981
 657              	.LVL82:
982
 167:../libSmallPrintf/src/small_printf.c **** 			}
983
 658              		.loc 1 167 5 is_stmt 1 discriminator 4 view .LVU207
984
 659 00b0 56E0     		b	.L53
985
 660              	.LVL83:
986
 661              	.L71:
987
 167:../libSmallPrintf/src/small_printf.c **** 			}
988
 662              		.loc 1 167 5 is_stmt 0 discriminator 4 view .LVU208
989
 663              	.LBE7:
990
 170:../libSmallPrintf/src/small_printf.c **** 				continue;
991
 664              		.loc 1 170 5 is_stmt 1 view .LVU209
992
 170:../libSmallPrintf/src/small_printf.c **** 				continue;
993
 665              		.loc 1 170 11 is_stmt 0 view .LVU210
994
 666 00b2 0599     		ldr	r1, [sp, #20]
995
 667 00b4 081D     		adds	r0, r1, #4
996
 668 00b6 0590     		str	r0, [sp, #20]
997
 669 00b8 0968     		ldr	r1, [r1]
998
 670 00ba 6120     		movs	r0, #97
999
 671 00bc 0290     		str	r0, [sp, #8]
1000
 672 00be 0193     		str	r3, [sp, #4]
1001
 673 00c0 0092     		str	r2, [sp]
1002
 674 00c2 0123     		movs	r3, #1
1003
 675              	.LVL84:
1004
 170:../libSmallPrintf/src/small_printf.c **** 				continue;
1005
 676              		.loc 1 170 11 view .LVU211
1006
 677 00c4 0A22     		movs	r2, #10
1007
 678              	.LVL85:
1008
 170:../libSmallPrintf/src/small_printf.c **** 				continue;
1009
 679              		.loc 1 170 11 view .LVU212
1010
 680 00c6 3046     		mov	r0, r6
1011
 681 00c8 FFF7FEFF 		bl	printi
1012
 682              	.LVL86:
1013
 170:../libSmallPrintf/src/small_printf.c **** 				continue;
1014
 683              		.loc 1 170 8 view .LVU213
1015
 684 00cc 0544     		add	r5, r5, r0
1016
 685              	.LVL87:
1017
 171:../libSmallPrintf/src/small_printf.c **** 			}
1018
 686              		.loc 1 171 5 is_stmt 1 view .LVU214
1019
 687 00ce 47E0     		b	.L53
1020
 688              	.LVL88:
1021
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 18
1022
 
1023
 
1024
 689              	.L72:
1025
 174:../libSmallPrintf/src/small_printf.c **** 				continue;
1026
 690              		.loc 1 174 5 view .LVU215
1027
 174:../libSmallPrintf/src/small_printf.c **** 				continue;
1028
 691              		.loc 1 174 11 is_stmt 0 view .LVU216
1029
 692 00d0 0599     		ldr	r1, [sp, #20]
1030
 693 00d2 081D     		adds	r0, r1, #4
1031
 694 00d4 0590     		str	r0, [sp, #20]
1032
 695 00d6 0968     		ldr	r1, [r1]
1033
 696 00d8 6120     		movs	r0, #97
1034
 697 00da 0290     		str	r0, [sp, #8]
1035
 698 00dc 0193     		str	r3, [sp, #4]
1036
 699 00de 0092     		str	r2, [sp]
1037
 700 00e0 0023     		movs	r3, #0
1038
 701              	.LVL89:
1039
 174:../libSmallPrintf/src/small_printf.c **** 				continue;
1040
 702              		.loc 1 174 11 view .LVU217
1041
 703 00e2 1022     		movs	r2, #16
1042
 704              	.LVL90:
1043
 174:../libSmallPrintf/src/small_printf.c **** 				continue;
1044
 705              		.loc 1 174 11 view .LVU218
1045
 706 00e4 3046     		mov	r0, r6
1046
 707 00e6 FFF7FEFF 		bl	printi
1047
 708              	.LVL91:
1048
 174:../libSmallPrintf/src/small_printf.c **** 				continue;
1049
 709              		.loc 1 174 8 view .LVU219
1050
 710 00ea 0544     		add	r5, r5, r0
1051
 711              	.LVL92:
1052
 175:../libSmallPrintf/src/small_printf.c **** 			}
1053
 712              		.loc 1 175 5 is_stmt 1 view .LVU220
1054
 713 00ec 38E0     		b	.L53
1055
 714              	.LVL93:
1056
 715              	.L73:
1057
 178:../libSmallPrintf/src/small_printf.c **** 				continue;
1058
 716              		.loc 1 178 5 view .LVU221
1059
 178:../libSmallPrintf/src/small_printf.c **** 				continue;
1060
 717              		.loc 1 178 11 is_stmt 0 view .LVU222
1061
 718 00ee 0599     		ldr	r1, [sp, #20]
1062
 719 00f0 081D     		adds	r0, r1, #4
1063
 720 00f2 0590     		str	r0, [sp, #20]
1064
 721 00f4 0968     		ldr	r1, [r1]
1065
 722 00f6 4120     		movs	r0, #65
1066
 723 00f8 0290     		str	r0, [sp, #8]
1067
 724 00fa 0193     		str	r3, [sp, #4]
1068
 725 00fc 0092     		str	r2, [sp]
1069
 726 00fe 0023     		movs	r3, #0
1070
 727              	.LVL94:
1071
 178:../libSmallPrintf/src/small_printf.c **** 				continue;
1072
 728              		.loc 1 178 11 view .LVU223
1073
 729 0100 1022     		movs	r2, #16
1074
 730              	.LVL95:
1075
 178:../libSmallPrintf/src/small_printf.c **** 				continue;
1076
 731              		.loc 1 178 11 view .LVU224
1077
 732 0102 3046     		mov	r0, r6
1078
 733 0104 FFF7FEFF 		bl	printi
1079
 734              	.LVL96:
1080
 178:../libSmallPrintf/src/small_printf.c **** 				continue;
1081
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 19
1082
 
1083
 
1084
 735              		.loc 1 178 8 view .LVU225
1085
 736 0108 0544     		add	r5, r5, r0
1086
 737              	.LVL97:
1087
 179:../libSmallPrintf/src/small_printf.c **** 			}
1088
 738              		.loc 1 179 5 is_stmt 1 view .LVU226
1089
 739 010a 29E0     		b	.L53
1090
 740              	.LVL98:
1091
 741              	.L74:
1092
 182:../libSmallPrintf/src/small_printf.c **** 				continue;
1093
 742              		.loc 1 182 5 view .LVU227
1094
 182:../libSmallPrintf/src/small_printf.c **** 				continue;
1095
 743              		.loc 1 182 11 is_stmt 0 view .LVU228
1096
 744 010c 0599     		ldr	r1, [sp, #20]
1097
 745 010e 081D     		adds	r0, r1, #4
1098
 746 0110 0590     		str	r0, [sp, #20]
1099
 747 0112 0968     		ldr	r1, [r1]
1100
 748 0114 6120     		movs	r0, #97
1101
 749 0116 0290     		str	r0, [sp, #8]
1102
 750 0118 0193     		str	r3, [sp, #4]
1103
 751 011a 0092     		str	r2, [sp]
1104
 752 011c 0023     		movs	r3, #0
1105
 753              	.LVL99:
1106
 182:../libSmallPrintf/src/small_printf.c **** 				continue;
1107
 754              		.loc 1 182 11 view .LVU229
1108
 755 011e 0A22     		movs	r2, #10
1109
 756              	.LVL100:
1110
 182:../libSmallPrintf/src/small_printf.c **** 				continue;
1111
 757              		.loc 1 182 11 view .LVU230
1112
 758 0120 3046     		mov	r0, r6
1113
 759 0122 FFF7FEFF 		bl	printi
1114
 760              	.LVL101:
1115
 182:../libSmallPrintf/src/small_printf.c **** 				continue;
1116
 761              		.loc 1 182 8 view .LVU231
1117
 762 0126 0544     		add	r5, r5, r0
1118
 763              	.LVL102:
1119
 183:../libSmallPrintf/src/small_printf.c **** 			}
1120
 764              		.loc 1 183 5 is_stmt 1 view .LVU232
1121
 765 0128 1AE0     		b	.L53
1122
 766              	.LVL103:
1123
 767              	.L75:
1124
 187:../libSmallPrintf/src/small_printf.c **** 				scr[1] = '\0';
1125
 768              		.loc 1 187 5 view .LVU233
1126
 187:../libSmallPrintf/src/small_printf.c **** 				scr[1] = '\0';
1127
 769              		.loc 1 187 20 is_stmt 0 view .LVU234
1128
 770 012a 0599     		ldr	r1, [sp, #20]
1129
 771 012c 081D     		adds	r0, r1, #4
1130
 772 012e 0590     		str	r0, [sp, #20]
1131
 187:../libSmallPrintf/src/small_printf.c **** 				scr[1] = '\0';
1132
 773              		.loc 1 187 14 view .LVU235
1133
 774 0130 0978     		ldrb	r1, [r1]	@ zero_extendqisi2
1134
 187:../libSmallPrintf/src/small_printf.c **** 				scr[1] = '\0';
1135
 775              		.loc 1 187 12 view .LVU236
1136
 776 0132 8DF81C10 		strb	r1, [sp, #28]
1137
 188:../libSmallPrintf/src/small_printf.c **** 				pc += prints (out, scr, width, pad);
1138
 777              		.loc 1 188 5 is_stmt 1 view .LVU237
1139
 188:../libSmallPrintf/src/small_printf.c **** 				pc += prints (out, scr, width, pad);
1140
 778              		.loc 1 188 12 is_stmt 0 view .LVU238
1141
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 20
1142
 
1143
 
1144
 779 0136 0021     		movs	r1, #0
1145
 780 0138 8DF81D10 		strb	r1, [sp, #29]
1146
 189:../libSmallPrintf/src/small_printf.c **** 				continue;
1147
 781              		.loc 1 189 5 is_stmt 1 view .LVU239
1148
 189:../libSmallPrintf/src/small_printf.c **** 				continue;
1149
 782              		.loc 1 189 11 is_stmt 0 view .LVU240
1150
 783 013c 07A9     		add	r1, sp, #28
1151
 784 013e 3046     		mov	r0, r6
1152
 785 0140 FFF7FEFF 		bl	prints
1153
 786              	.LVL104:
1154
 189:../libSmallPrintf/src/small_printf.c **** 				continue;
1155
 787              		.loc 1 189 8 view .LVU241
1156
 788 0144 0544     		add	r5, r5, r0
1157
 789              	.LVL105:
1158
 190:../libSmallPrintf/src/small_printf.c **** 			}
1159
 790              		.loc 1 190 5 is_stmt 1 view .LVU242
1160
 791 0146 0BE0     		b	.L53
1161
 792              	.LVL106:
1162
 793              	.L62:
1163
 136:../libSmallPrintf/src/small_printf.c **** 			width = pad = 0;
1164
 794              		.loc 1 136 4 is_stmt 0 view .LVU243
1165
 795 0148 0C46     		mov	r4, r1
1166
 796 014a 0FE0     		b	.L42
1167
 797              	.LVL107:
1168
 798              	.L77:
1169
 197:../libSmallPrintf/src/small_printf.c **** 			}
1170
 198:../libSmallPrintf/src/small_printf.c **** 		}
1171
 199:../libSmallPrintf/src/small_printf.c **** 		else {
1172
 200:../libSmallPrintf/src/small_printf.c **** 		out:
1173
 201:../libSmallPrintf/src/small_printf.c **** 			/* deal with LF -> CRLF mapping */
1174
 202:../libSmallPrintf/src/small_printf.c **** 			if(*format == '\n')
1175
 203:../libSmallPrintf/src/small_printf.c **** 			{
1176
 204:../libSmallPrintf/src/small_printf.c **** 				printchar(out,'\r');
1177
 799              		.loc 1 204 5 is_stmt 1 view .LVU244
1178
 800 014c 0D21     		movs	r1, #13
1179
 801 014e 3046     		mov	r0, r6
1180
 802 0150 FFF7FEFF 		bl	printchar
1181
 803              	.LVL108:
1182
 205:../libSmallPrintf/src/small_printf.c **** 				++pc; // extra char
1183
 804              		.loc 1 205 5 view .LVU245
1184
 805 0154 0135     		adds	r5, r5, #1
1185
 806              	.LVL109:
1186
 807              	.L59:
1187
 206:../libSmallPrintf/src/small_printf.c **** 			}
1188
 207:../libSmallPrintf/src/small_printf.c **** 			printchar (out, *format);
1189
 808              		.loc 1 207 4 view .LVU246
1190
 809 0156 2178     		ldrb	r1, [r4]	@ zero_extendqisi2
1191
 810 0158 3046     		mov	r0, r6
1192
 811 015a FFF7FEFF 		bl	printchar
1193
 812              	.LVL110:
1194
 208:../libSmallPrintf/src/small_printf.c **** 			++pc;
1195
 813              		.loc 1 208 4 view .LVU247
1196
 814 015e 0135     		adds	r5, r5, #1
1197
 815              	.LVL111:
1198
 816              	.L53:
1199
 134:../libSmallPrintf/src/small_printf.c **** 		if (*format == '%') {
1200
 817              		.loc 1 134 23 is_stmt 0 view .LVU248
1201
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 21
1202
 
1203
 
1204
 818 0160 0134     		adds	r4, r4, #1
1205
 819              	.LVL112:
1206
 820              	.L41:
1207
 134:../libSmallPrintf/src/small_printf.c **** 		if (*format == '%') {
1208
 821              		.loc 1 134 9 discriminator 1 view .LVU249
1209
 822 0162 2378     		ldrb	r3, [r4]	@ zero_extendqisi2
1210
 134:../libSmallPrintf/src/small_printf.c **** 		if (*format == '%') {
1211
 823              		.loc 1 134 2 discriminator 1 view .LVU250
1212
 824 0164 33B1     		cbz	r3, .L43
1213
 135:../libSmallPrintf/src/small_printf.c **** 			++format;
1214
 825              		.loc 1 135 3 is_stmt 1 view .LVU251
1215
 135:../libSmallPrintf/src/small_printf.c **** 			++format;
1216
 826              		.loc 1 135 6 is_stmt 0 view .LVU252
1217
 827 0166 252B     		cmp	r3, #37
1218
 828 0168 3FF451AF 		beq	.L76
1219
 829              	.L42:
1220
 202:../libSmallPrintf/src/small_printf.c **** 			{
1221
 830              		.loc 1 202 4 is_stmt 1 view .LVU253
1222
 202:../libSmallPrintf/src/small_printf.c **** 			{
1223
 831              		.loc 1 202 7 is_stmt 0 view .LVU254
1224
 832 016c 2378     		ldrb	r3, [r4]	@ zero_extendqisi2
1225
 202:../libSmallPrintf/src/small_printf.c **** 			{
1226
 833              		.loc 1 202 6 view .LVU255
1227
 834 016e 0A2B     		cmp	r3, #10
1228
 835 0170 F1D1     		bne	.L59
1229
 202:../libSmallPrintf/src/small_printf.c **** 			{
1230
 836              		.loc 1 202 6 view .LVU256
1231
 837 0172 EBE7     		b	.L77
1232
 838              	.LVL113:
1233
 839              	.L43:
1234
 209:../libSmallPrintf/src/small_printf.c **** 		}
1235
 210:../libSmallPrintf/src/small_printf.c **** 	}
1236
 211:../libSmallPrintf/src/small_printf.c **** 	if (out) **out = '\0';
1237
 840              		.loc 1 211 2 is_stmt 1 view .LVU257
1238
 841              		.loc 1 211 5 is_stmt 0 view .LVU258
1239
 842 0174 16B1     		cbz	r6, .L40
1240
 843              		.loc 1 211 11 is_stmt 1 discriminator 1 view .LVU259
1241
 844              		.loc 1 211 12 is_stmt 0 discriminator 1 view .LVU260
1242
 845 0176 3368     		ldr	r3, [r6]
1243
 846              		.loc 1 211 17 discriminator 1 view .LVU261
1244
 847 0178 0022     		movs	r2, #0
1245
 848 017a 1A70     		strb	r2, [r3]
1246
 212:../libSmallPrintf/src/small_printf.c **** 	return pc;
1247
 849              		.loc 1 212 2 is_stmt 1 discriminator 1 view .LVU262
1248
 850              	.L40:
1249
 213:../libSmallPrintf/src/small_printf.c **** }
1250
 851              		.loc 1 213 1 is_stmt 0 view .LVU263
1251
 852 017c 2846     		mov	r0, r5
1252
 853 017e 08B0     		add	sp, sp, #32
1253
 854              	.LCFI8:
1254
 855              		.cfi_def_cfa_offset 16
1255
 856              		@ sp needed
1256
 857 0180 70BD     		pop	{r4, r5, r6, pc}
1257
 858              	.LVL114:
1258
 859              	.L79:
1259
 860              		.loc 1 213 1 view .LVU264
1260
 861 0182 00BF     		.align	2
1261
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 22
1262
 
1263
 
1264
 862              	.L78:
1265
 863 0184 00000000 		.word	.LC0
1266
 864              		.cfi_endproc
1267
 865              	.LFE6:
1268
 867              		.section	.text.small_printf,"ax",%progbits
1269
 868              		.align	1
1270
 869              		.global	small_printf
1271
 870              		.syntax unified
1272
 871              		.thumb
1273
 872              		.thumb_func
1274
 873              		.fpu softvfp
1275
 875              	small_printf:
1276
 876              	.LVL115:
1277
 877              	.LFB7:
1278
 214:../libSmallPrintf/src/small_printf.c **** 
1279
 215:../libSmallPrintf/src/small_printf.c **** 
1280
 216:../libSmallPrintf/src/small_printf.c **** int small_printf(const char *format, ...)
1281
 217:../libSmallPrintf/src/small_printf.c **** {
1282
 878              		.loc 1 217 1 is_stmt 1 view -0
1283
 879              		.cfi_startproc
1284
 880              		@ args = 4, pretend = 16, frame = 8
1285
 881              		@ frame_needed = 0, uses_anonymous_args = 1
1286
 882              		.loc 1 217 1 is_stmt 0 view .LVU266
1287
 883 0000 0FB4     		push	{r0, r1, r2, r3}
1288
 884              	.LCFI9:
1289
 885              		.cfi_def_cfa_offset 16
1290
 886              		.cfi_offset 0, -16
1291
 887              		.cfi_offset 1, -12
1292
 888              		.cfi_offset 2, -8
1293
 889              		.cfi_offset 3, -4
1294
 890 0002 00B5     		push	{lr}
1295
 891              	.LCFI10:
1296
 892              		.cfi_def_cfa_offset 20
1297
 893              		.cfi_offset 14, -20
1298
 894 0004 83B0     		sub	sp, sp, #12
1299
 895              	.LCFI11:
1300
 896              		.cfi_def_cfa_offset 32
1301
 897 0006 04AA     		add	r2, sp, #16
1302
 898 0008 52F8041B 		ldr	r1, [r2], #4
1303
 218:../libSmallPrintf/src/small_printf.c **** 	int result = 0;
1304
 899              		.loc 1 218 2 is_stmt 1 view .LVU267
1305
 900              	.LVL116:
1306
 219:../libSmallPrintf/src/small_printf.c ****         va_list args;
1307
 901              		.loc 1 219 9 view .LVU268
1308
 220:../libSmallPrintf/src/small_printf.c **** 
1309
 221:../libSmallPrintf/src/small_printf.c ****         va_start( args, format );
1310
 902              		.loc 1 221 9 view .LVU269
1311
 903 000c 0192     		str	r2, [sp, #4]
1312
 222:../libSmallPrintf/src/small_printf.c ****         result = small_print( 0, format, args );
1313
 904              		.loc 1 222 9 view .LVU270
1314
 905              		.loc 1 222 18 is_stmt 0 view .LVU271
1315
 906 000e 0020     		movs	r0, #0
1316
 907 0010 FFF7FEFF 		bl	small_print
1317
 908              	.LVL117:
1318
 223:../libSmallPrintf/src/small_printf.c ****         va_end(args);
1319
 909              		.loc 1 223 9 is_stmt 1 view .LVU272
1320
 224:../libSmallPrintf/src/small_printf.c ****         return result;
1321
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 23
1322
 
1323
 
1324
 910              		.loc 1 224 9 view .LVU273
1325
 225:../libSmallPrintf/src/small_printf.c **** }
1326
 911              		.loc 1 225 1 is_stmt 0 view .LVU274
1327
 912 0014 03B0     		add	sp, sp, #12
1328
 913              	.LCFI12:
1329
 914              		.cfi_def_cfa_offset 20
1330
 915              		@ sp needed
1331
 916 0016 5DF804EB 		ldr	lr, [sp], #4
1332
 917              	.LCFI13:
1333
 918              		.cfi_restore 14
1334
 919              		.cfi_def_cfa_offset 16
1335
 920 001a 04B0     		add	sp, sp, #16
1336
 921              	.LCFI14:
1337
 922              		.cfi_restore 3
1338
 923              		.cfi_restore 2
1339
 924              		.cfi_restore 1
1340
 925              		.cfi_restore 0
1341
 926              		.cfi_def_cfa_offset 0
1342
 927 001c 7047     		bx	lr
1343
 928              		.cfi_endproc
1344
 929              	.LFE7:
1345
 931              		.section	.text.small_sprintf,"ax",%progbits
1346
 932              		.align	1
1347
 933              		.global	small_sprintf
1348
 934              		.syntax unified
1349
 935              		.thumb
1350
 936              		.thumb_func
1351
 937              		.fpu softvfp
1352
 939              	small_sprintf:
1353
 940              	.LVL118:
1354
 941              	.LFB8:
1355
 226:../libSmallPrintf/src/small_printf.c **** 
1356
 227:../libSmallPrintf/src/small_printf.c **** int small_sprintf(char *out, const char *format, ...)
1357
 228:../libSmallPrintf/src/small_printf.c **** {
1358
 942              		.loc 1 228 1 is_stmt 1 view -0
1359
 943              		.cfi_startproc
1360
 944              		@ args = 4, pretend = 12, frame = 16
1361
 945              		@ frame_needed = 0, uses_anonymous_args = 1
1362
 946              		.loc 1 228 1 is_stmt 0 view .LVU276
1363
 947 0000 0EB4     		push	{r1, r2, r3}
1364
 948              	.LCFI15:
1365
 949              		.cfi_def_cfa_offset 12
1366
 950              		.cfi_offset 1, -12
1367
 951              		.cfi_offset 2, -8
1368
 952              		.cfi_offset 3, -4
1369
 953 0002 00B5     		push	{lr}
1370
 954              	.LCFI16:
1371
 955              		.cfi_def_cfa_offset 16
1372
 956              		.cfi_offset 14, -16
1373
 957 0004 84B0     		sub	sp, sp, #16
1374
 958              	.LCFI17:
1375
 959              		.cfi_def_cfa_offset 32
1376
 960 0006 0190     		str	r0, [sp, #4]
1377
 961 0008 05AA     		add	r2, sp, #20
1378
 962 000a 52F8041B 		ldr	r1, [r2], #4
1379
 229:../libSmallPrintf/src/small_printf.c ****     int result = 0;
1380
 963              		.loc 1 229 5 is_stmt 1 view .LVU277
1381
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 24
1382
 
1383
 
1384
 964              	.LVL119:
1385
 230:../libSmallPrintf/src/small_printf.c **** 		va_list args;
1386
 965              		.loc 1 230 3 view .LVU278
1387
 231:../libSmallPrintf/src/small_printf.c ****         va_start( args, format );
1388
 966              		.loc 1 231 9 view .LVU279
1389
 967 000e 0392     		str	r2, [sp, #12]
1390
 232:../libSmallPrintf/src/small_printf.c ****         result = small_print( &out, format, args );
1391
 968              		.loc 1 232 9 view .LVU280
1392
 969              		.loc 1 232 18 is_stmt 0 view .LVU281
1393
 970 0010 01A8     		add	r0, sp, #4
1394
 971              	.LVL120:
1395
 972              		.loc 1 232 18 view .LVU282
1396
 973 0012 FFF7FEFF 		bl	small_print
1397
 974              	.LVL121:
1398
 233:../libSmallPrintf/src/small_printf.c ****         va_end(args);
1399
 975              		.loc 1 233 9 is_stmt 1 view .LVU283
1400
 234:../libSmallPrintf/src/small_printf.c ****         return result;
1401
 976              		.loc 1 234 9 view .LVU284
1402
 235:../libSmallPrintf/src/small_printf.c **** }
1403
 977              		.loc 1 235 1 is_stmt 0 view .LVU285
1404
 978 0016 04B0     		add	sp, sp, #16
1405
 979              	.LCFI18:
1406
 980              		.cfi_def_cfa_offset 16
1407
 981              		@ sp needed
1408
 982 0018 5DF804EB 		ldr	lr, [sp], #4
1409
 983              	.LCFI19:
1410
 984              		.cfi_restore 14
1411
 985              		.cfi_def_cfa_offset 12
1412
 986 001c 03B0     		add	sp, sp, #12
1413
 987              	.LCFI20:
1414
 988              		.cfi_restore 3
1415
 989              		.cfi_restore 2
1416
 990              		.cfi_restore 1
1417
 991              		.cfi_def_cfa_offset 0
1418
 992 001e 7047     		bx	lr
1419
 993              		.cfi_endproc
1420
 994              	.LFE8:
1421
 996              		.section	.rodata.small_print.str1.4,"aMS",%progbits,1
1422
 997              		.align	2
1423
 998              	.LC0:
1424
 999 0000 286E756C 		.ascii	"(null)\000"
1425
 999      6C2900
1426
 1000              		.text
1427
 1001              	.Letext0:
1428
 1002              		.file 2 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
1429
 1003              		.file 3 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
1430
 1004              		.file 4 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
1431
 1005              		.file 5 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
1432
 1006              		.file 6 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
1433
 1007              		.file 7 "<built-in>"
1434
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s 			page 25
1435
 
1436
 
1437
DEFINED SYMBOLS
1438
                            *ABS*:0000000000000000 small_printf.c
1439
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:16     .text.printchar:0000000000000000 $t
1440
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:23     .text.printchar:0000000000000000 printchar
1441
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:73     .text.prints:0000000000000000 $t
1442
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:79     .text.prints:0000000000000000 prints
1443
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:233    .text.printi:0000000000000000 $t
1444
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:239    .text.printi:0000000000000000 printi
1445
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:434    .text.small_print:0000000000000000 $t
1446
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:440    .text.small_print:0000000000000000 small_print
1447
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:863    .text.small_print:0000000000000184 $d
1448
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:868    .text.small_printf:0000000000000000 $t
1449
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:875    .text.small_printf:0000000000000000 small_printf
1450
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:932    .text.small_sprintf:0000000000000000 $t
1451
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:939    .text.small_sprintf:0000000000000000 small_sprintf
1452
C:\Users\mike\AppData\Local\Temp\ccbGIhZd.s:997    .rodata.small_print.str1.4:0000000000000000 $d
1453
 
1454
UNDEFINED SYMBOLS
1455
PutCharSerial