GAS LISTING /tmp/ccEHcQCQ.s page 1
1 .file "upnp_dev.c"
2 __SP_H__ = 0x3e
3 __SP_L__ = 0x3d
4 __SREG__ = 0x3f
5 __RAMPZ__ = 0x3b
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .section .rodata.str1.1,"aMS",@progbits,1
9 .LC0:
10 0000 3C73 7065 .string "\r\n"
10 6356 6572
10 7369 6F6E
10 3E0D 0A00
11 .LC1:
12 0010 3C6D 616A .string "1\r\n"
12 6F72 3E31
12 3C2F 6D61
12 6A6F 723E
12 0D0A 00
13 .LC2:
14 0023 3C6D 696E .string "0\r\n"
14 6F72 3E30
14 3C2F 6D69
14 6E6F 723E
14 0D0A 00
15 .LC3:
16 0036 3C2F 7370 .string "\r\n"
16 6563 5665
16 7273 696F
16 6E3E 0D0A
16 00
17 .section .text.SpecVersion,"ax",@progbits
18 .type SpecVersion, @function
19 SpecVersion:
20 0000 CF93 push r28
21 0002 DF93 push r29
22 /* prologue: function */
23 /* frame size = 0 */
24 /* stack size = 2 */
25 .L__stack_usage = 2
26 0004 EC01 movw r28,r24
27 0006 BC01 movw r22,r24
28 0008 80E0 ldi r24,lo8(.LC0)
29 000a 90E0 ldi r25,hi8(.LC0)
30 000c 0E94 0000 call fputs
31 0010 BE01 movw r22,r28
32 0012 80E0 ldi r24,lo8(.LC1)
33 0014 90E0 ldi r25,hi8(.LC1)
34 0016 0E94 0000 call fputs
35 001a BE01 movw r22,r28
36 001c 80E0 ldi r24,lo8(.LC2)
37 001e 90E0 ldi r25,hi8(.LC2)
38 0020 0E94 0000 call fputs
39 0024 BE01 movw r22,r28
40 0026 80E0 ldi r24,lo8(.LC3)
41 0028 90E0 ldi r25,hi8(.LC3)
42 /* epilogue start */
GAS LISTING /tmp/ccEHcQCQ.s page 2
43 002a DF91 pop r29
44 002c CF91 pop r28
45 002e 0C94 0000 jmp fputs
46 .size SpecVersion, .-SpecVersion
47 .section .rodata.str1.1
48 .LC4:
49 0047 3C25 733E .string "<%s>"
49 00
50 .LC5:
51 004c 2573 3C2F .string "%s%s>\r\n"
51 2573 3E0D
51 0A00
52 .section .text.WritePrepTag,"ax",@progbits
53 .type WritePrepTag, @function
54 WritePrepTag:
55 0000 CF92 push r12
56 0002 DF92 push r13
57 0004 EF92 push r14
58 0006 FF92 push r15
59 0008 0F93 push r16
60 000a 1F93 push r17
61 000c CF93 push r28
62 000e DF93 push r29
63 /* prologue: function */
64 /* frame size = 0 */
65 /* stack size = 8 */
66 .L__stack_usage = 8
67 0010 182F mov r17,r24
68 0012 092F mov r16,r25
69 0014 F62E mov r15,r22
70 0016 E72E mov r14,r23
71 0018 EA01 movw r28,r20
72 001a 6901 movw r12,r18
73 001c 2097 sbiw r28,0
74 001e 01F0 breq .L2
75 0020 7F93 push r23
76 0022 6F93 push r22
77 0024 80E0 ldi r24,lo8(.LC4)
78 0026 90E0 ldi r25,hi8(.LC4)
79 0028 9F93 push r25
80 002a 8F93 push r24
81 002c 0F93 push r16
82 002e 1F93 push r17
83 0030 0E94 0000 call fprintf
84 0034 0F90 pop __tmp_reg__
85 0036 0F90 pop __tmp_reg__
86 0038 0F90 pop __tmp_reg__
87 003a 0F90 pop __tmp_reg__
88 003c 0F90 pop __tmp_reg__
89 003e 0F90 pop __tmp_reg__
90 0040 C114 cp r12,__zero_reg__
91 0042 D104 cpc r13,__zero_reg__
92 0044 01F0 breq .L4
93 0046 8881 ld r24,Y
94 0048 8B32 cpi r24,lo8(43)
95 004a 01F4 brne .L4
96 004c 2196 adiw r28,1
GAS LISTING /tmp/ccEHcQCQ.s page 3
97 004e 612F mov r22,r17
98 0050 702F mov r23,r16
99 0052 C601 movw r24,r12
100 0054 0E94 0000 call fputs
101 .L4:
102 0058 EF92 push r14
103 005a FF92 push r15
104 005c DF93 push r29
105 005e CF93 push r28
106 0060 80E0 ldi r24,lo8(.LC5)
107 0062 90E0 ldi r25,hi8(.LC5)
108 0064 9F93 push r25
109 0066 8F93 push r24
110 0068 0F93 push r16
111 006a 1F93 push r17
112 006c 0E94 0000 call fprintf
113 0070 8DB7 in r24,__SP_L__
114 0072 9EB7 in r25,__SP_H__
115 0074 0896 adiw r24,8
116 0076 0FB6 in __tmp_reg__,__SREG__
117 0078 F894 cli
118 007a 9EBF out __SP_H__,r25
119 007c 0FBE out __SREG__,__tmp_reg__
120 007e 8DBF out __SP_L__,r24
121 .L2:
122 /* epilogue start */
123 0080 DF91 pop r29
124 0082 CF91 pop r28
125 0084 1F91 pop r17
126 0086 0F91 pop r16
127 0088 FF90 pop r15
128 008a EF90 pop r14
129 008c DF90 pop r13
130 008e CF90 pop r12
131 0090 0895 ret
132 .size WritePrepTag, .-WritePrepTag
133 .section .text.WriteTag,"ax",@progbits
134 .type WriteTag, @function
135 WriteTag:
136 /* prologue: function */
137 /* frame size = 0 */
138 /* stack size = 0 */
139 .L__stack_usage = 0
140 0000 20E0 ldi r18,0
141 0002 30E0 ldi r19,0
142 0004 0C94 0000 jmp WritePrepTag
143 .size WriteTag, .-WriteTag
144 .section .rodata.str1.1
145 .LC6:
146 0056 5345 5256 .string "SERVER: NutOS/5.0 UPnP/1.0 TestUPnP/1.0\r\n"
146 4552 3A20
146 4E75 744F
146 532F 352E
146 3020 5550
147 .LC7:
148 0080 786D 6C00 .string "xml"
149 .LC8:
GAS LISTING /tmp/ccEHcQCQ.s page 4
150 0084 7465 7874 .string "text"
150 00
151 .LC9:
152 0089 3C3F 786D .string "\r\n"
152 6C20 7665
152 7273 696F
152 6E3D 2231
152 2E30 223F
153 .section .text.XmlHead,"ax",@progbits
154 .type XmlHead, @function
155 XmlHead:
156 0000 EF92 push r14
157 0002 FF92 push r15
158 0004 0F93 push r16
159 0006 1F93 push r17
160 0008 CF93 push r28
161 000a DF93 push r29
162 /* prologue: function */
163 /* frame size = 0 */
164 /* stack size = 6 */
165 .L__stack_usage = 6
166 000c EC01 movw r28,r24
167 000e 68EC ldi r22,lo8(-56)
168 0010 70E0 ldi r23,0
169 0012 0E94 0000 call HttpSendStreamHeaderTop
170 0016 BE01 movw r22,r28
171 0018 80E0 ldi r24,lo8(.LC6)
172 001a 90E0 ldi r25,hi8(.LC6)
173 001c 0E94 0000 call fputs
174 0020 EE24 clr r14
175 0022 EA94 dec r14
176 0024 FE2C mov r15,r14
177 0026 8701 movw r16,r14
178 0028 21E0 ldi r18,lo8(1)
179 002a 30E0 ldi r19,0
180 002c 40E0 ldi r20,lo8(.LC7)
181 002e 50E0 ldi r21,hi8(.LC7)
182 0030 60E0 ldi r22,lo8(.LC8)
183 0032 70E0 ldi r23,hi8(.LC8)
184 0034 CE01 movw r24,r28
185 0036 0E94 0000 call HttpSendStreamHeaderBottom
186 003a BE01 movw r22,r28
187 003c 80E0 ldi r24,lo8(.LC9)
188 003e 90E0 ldi r25,hi8(.LC9)
189 /* epilogue start */
190 0040 DF91 pop r29
191 0042 CF91 pop r28
192 0044 1F91 pop r17
193 0046 0F91 pop r16
194 0048 FF90 pop r15
195 004a EF90 pop r14
196 004c 0C94 0000 jmp fputs
197 .size XmlHead, .-XmlHead
198 .section .rodata.str1.1
199 .LC10:
200 00a1 7965 7300 .string "yes"
201 .LC11:
GAS LISTING /tmp/ccEHcQCQ.s page 5
202 00a5 6E6F 00 .string "no"
203 .LC12:
204 00a8 3C61 6374 .string "\r\n"
204 696F 6E4C
204 6973 743E
204 0D0A 00
205 .LC13:
206 00b7 3C61 6374 .string "\r\n"
206 696F 6E3E
206 0D0A 00
207 .LC14:
208 00c2 6E61 6D65 .string "name"
208 00
209 .LC15:
210 00c7 3C61 7267 .string "\r\n"
210 756D 656E
210 744C 6973
210 743E 0D0A
210 00
211 .LC16:
212 00d8 3C61 7267 .string "\r\n"
212 756D 656E
212 743E 0D0A
212 00
213 .LC17:
214 00e5 7265 6C61 .string "relatedStateVariable"
214 7465 6453
214 7461 7465
214 5661 7269
214 6162 6C65
215 .LC18:
216 00fa 696E 00 .string "in"
217 .LC19:
218 00fd 6469 7265 .string "direction"
218 6374 696F
218 6E00
219 .LC20:
220 0107 3C2F 6172 .string "\r\n"
220 6775 6D65
220 6E74 3E0D
220 0A00
221 .LC21:
222 0115 6F75 7400 .string "out"
223 .LC22:
224 0119 3C2F 6172 .string "\r\n"
224 6775 6D65
224 6E74 4C69
224 7374 3E0D
224 0A00
225 .LC23:
226 012b 3C2F 6163 .string "\r\n"
226 7469 6F6E
226 3E0D 0A00
227 .LC24:
228 0137 3C2F 6163 .string "\r\n"
228 7469 6F6E
228 4C69 7374
GAS LISTING /tmp/ccEHcQCQ.s page 6
228 3E0D 0A00
229 .LC25:
230 0147 3C73 6572 .string "\r\n"
230 7669 6365
230 5374 6174
230 6554 6162
230 6C65 3E0D
231 .LC26:
232 015d 3C73 7461 .string "\r\n"
232 7465 5661
232 7269 6162
232 6C65 2073
232 656E 6445
233 .LC27:
234 017f 6461 7461 .string "dataType"
234 5479 7065
234 00
235 .LC28:
236 0188 6465 6661 .string "defaultValue"
236 756C 7456
236 616C 7565
236 00
237 .LC29:
238 0195 3C2F 7374 .string "\r\n"
238 6174 6556
238 6172 6961
238 626C 653E
238 0D0A 00
239 .LC30:
240 01a8 3C2F 7365 .string "\r\n"
240 7276 6963
240 6553 7461
240 7465 5461
240 626C 653E
241 .LC31:
242 01bf 3C2F 7363 .string "\r\n"
242 7064 3E0D
242 0A00
243 .LC32:
244 01c9 3C73 6370 .string "\r\n"
244 6420 786D
244 6C6E 733D
244 2275 726E
244 3A73 6368
245 .section .text.UpnpCgiServiceDescription,"ax",@progbits
246 .type UpnpCgiServiceDescription, @function
247 UpnpCgiServiceDescription:
248 0000 AF92 push r10
249 0002 BF92 push r11
250 0004 CF92 push r12
251 0006 DF92 push r13
252 0008 EF92 push r14
253 000a FF92 push r15
254 000c 0F93 push r16
255 000e 1F93 push r17
256 0010 CF93 push r28
257 0012 DF93 push r29
GAS LISTING /tmp/ccEHcQCQ.s page 7
258 /* prologue: function */
259 /* frame size = 0 */
260 /* stack size = 10 */
261 .L__stack_usage = 10
262 0014 7C01 movw r14,r24
263 0016 DC01 movw r26,r24
264 0018 CC91 ld r28,X
265 001a 1196 adiw r26,1
266 001c DC91 ld r29,X
267 001e 8C01 movw r16,r24
268 0020 0E5F subi r16,-2
269 0022 1F4F sbci r17,-1
270 0024 C801 movw r24,r16
271 0026 0E94 0000 call HttpArgParseFirst
272 002a 5C01 movw r10,r24
273 002c 892B or r24,r25
274 002e 01F4 brne .+2
275 0030 00C0 rjmp .L32
276 0032 C801 movw r24,r16
277 0034 0E94 0000 call HttpArgValue
278 0038 6C01 movw r12,r24
279 003a 0091 0000 lds r16,device_registration
280 003e 1091 0000 lds r17,device_registration+1
281 .L16:
282 0042 0115 cp r16,__zero_reg__
283 0044 1105 cpc r17,__zero_reg__
284 0046 01F4 brne .+2
285 0048 00C0 rjmp .L32
286 004a B501 movw r22,r10
287 004c F801 movw r30,r16
288 004e 8485 ldd r24,Z+12
289 0050 9585 ldd r25,Z+13
290 0052 0E94 0000 call strcmp
291 0056 892B or r24,r25
292 0058 01F4 brne .L17
293 005a D801 movw r26,r16
294 005c 1496 adiw r26,4
295 005e 0D91 ld r16,X+
296 0060 1C91 ld r17,X
297 0062 1597 sbiw r26,4+1
298 .L18:
299 0064 0115 cp r16,__zero_reg__
300 0066 1105 cpc r17,__zero_reg__
301 0068 01F4 brne .+2
302 006a 00C0 rjmp .L32
303 006c B601 movw r22,r12
304 006e F801 movw r30,r16
305 0070 8681 ldd r24,Z+6
306 0072 9781 ldd r25,Z+7
307 0074 0E94 0000 call strcmp
308 0078 892B or r24,r25
309 007a 01F0 breq .L19
310 007c D801 movw r26,r16
311 007e 0D91 ld r16,X+
312 0080 1C91 ld r17,X
313 0082 00C0 rjmp .L18
314 .L17:
GAS LISTING /tmp/ccEHcQCQ.s page 8
315 0084 F801 movw r30,r16
316 0086 0081 ld r16,Z
317 0088 1181 ldd r17,Z+1
318 008a 00C0 rjmp .L16
319 .L19:
320 008c F801 movw r30,r16
321 008e C084 ldd r12,Z+8
322 0090 D184 ldd r13,Z+9
323 0092 D701 movw r26,r14
324 0094 8D91 ld r24,X+
325 0096 9C91 ld r25,X
326 0098 0E94 0000 call XmlHead
327 009c BE01 movw r22,r28
328 009e 80E0 ldi r24,lo8(.LC32)
329 00a0 90E0 ldi r25,hi8(.LC32)
330 00a2 0E94 0000 call fputs
331 00a6 CE01 movw r24,r28
332 00a8 0E94 0000 call SpecVersion
333 00ac F601 movw r30,r12
334 00ae 0681 ldd r16,Z+6
335 00b0 1781 ldd r17,Z+7
336 00b2 0115 cp r16,__zero_reg__
337 00b4 1105 cpc r17,__zero_reg__
338 00b6 01F4 brne .+2
339 00b8 00C0 rjmp .L34
340 00ba BE01 movw r22,r28
341 00bc 80E0 ldi r24,lo8(.LC12)
342 00be 90E0 ldi r25,hi8(.LC12)
343 00c0 0E94 0000 call fputs
344 .L28:
345 00c4 BE01 movw r22,r28
346 00c6 80E0 ldi r24,lo8(.LC13)
347 00c8 90E0 ldi r25,hi8(.LC13)
348 00ca 0E94 0000 call fputs
349 00ce D801 movw r26,r16
350 00d0 1296 adiw r26,2
351 00d2 4D91 ld r20,X+
352 00d4 5C91 ld r21,X
353 00d6 1397 sbiw r26,2+1
354 00d8 60E0 ldi r22,lo8(.LC14)
355 00da 70E0 ldi r23,hi8(.LC14)
356 00dc CE01 movw r24,r28
357 00de 0E94 0000 call WriteTag
358 00e2 F801 movw r30,r16
359 00e4 8481 ldd r24,Z+4
360 00e6 9581 ldd r25,Z+5
361 00e8 892B or r24,r25
362 00ea 01F4 brne .L22
363 00ec 8681 ldd r24,Z+6
364 00ee 9781 ldd r25,Z+7
365 00f0 892B or r24,r25
366 00f2 01F4 brne .+2
367 00f4 00C0 rjmp .L23
368 .L22:
369 00f6 BE01 movw r22,r28
370 00f8 80E0 ldi r24,lo8(.LC15)
371 00fa 90E0 ldi r25,hi8(.LC15)
GAS LISTING /tmp/ccEHcQCQ.s page 9
372 00fc 0E94 0000 call fputs
373 0100 D801 movw r26,r16
374 0102 1496 adiw r26,4
375 0104 ED90 ld r14,X+
376 0106 FC90 ld r15,X
377 0108 1597 sbiw r26,4+1
378 .L24:
379 010a E114 cp r14,__zero_reg__
380 010c F104 cpc r15,__zero_reg__
381 010e 01F0 breq .L48
382 0110 BE01 movw r22,r28
383 0112 80E0 ldi r24,lo8(.LC16)
384 0114 90E0 ldi r25,hi8(.LC16)
385 0116 0E94 0000 call fputs
386 011a F701 movw r30,r14
387 011c 4281 ldd r20,Z+2
388 011e 5381 ldd r21,Z+3
389 0120 60E0 ldi r22,lo8(.LC14)
390 0122 70E0 ldi r23,hi8(.LC14)
391 0124 CE01 movw r24,r28
392 0126 0E94 0000 call WriteTag
393 012a D701 movw r26,r14
394 012c 1696 adiw r26,6
395 012e ED91 ld r30,X+
396 0130 FC91 ld r31,X
397 0132 1797 sbiw r26,6+1
398 0134 4281 ldd r20,Z+2
399 0136 5381 ldd r21,Z+3
400 0138 60E0 ldi r22,lo8(.LC17)
401 013a 70E0 ldi r23,hi8(.LC17)
402 013c CE01 movw r24,r28
403 013e 0E94 0000 call WriteTag
404 0142 40E0 ldi r20,lo8(.LC18)
405 0144 50E0 ldi r21,hi8(.LC18)
406 0146 60E0 ldi r22,lo8(.LC19)
407 0148 70E0 ldi r23,hi8(.LC19)
408 014a CE01 movw r24,r28
409 014c 0E94 0000 call WriteTag
410 0150 BE01 movw r22,r28
411 0152 80E0 ldi r24,lo8(.LC20)
412 0154 90E0 ldi r25,hi8(.LC20)
413 0156 0E94 0000 call fputs
414 015a F701 movw r30,r14
415 015c E080 ld r14,Z
416 015e F180 ldd r15,Z+1
417 0160 00C0 rjmp .L24
418 .L48:
419 0162 D801 movw r26,r16
420 0164 1696 adiw r26,6
421 0166 ED90 ld r14,X+
422 0168 FC90 ld r15,X
423 016a 1797 sbiw r26,6+1
424 .L26:
425 016c BE01 movw r22,r28
426 016e E114 cp r14,__zero_reg__
427 0170 F104 cpc r15,__zero_reg__
428 0172 01F0 breq .L49
GAS LISTING /tmp/ccEHcQCQ.s page 10
429 0174 80E0 ldi r24,lo8(.LC16)
430 0176 90E0 ldi r25,hi8(.LC16)
431 0178 0E94 0000 call fputs
432 017c F701 movw r30,r14
433 017e 4281 ldd r20,Z+2
434 0180 5381 ldd r21,Z+3
435 0182 60E0 ldi r22,lo8(.LC14)
436 0184 70E0 ldi r23,hi8(.LC14)
437 0186 CE01 movw r24,r28
438 0188 0E94 0000 call WriteTag
439 018c D701 movw r26,r14
440 018e 1696 adiw r26,6
441 0190 ED91 ld r30,X+
442 0192 FC91 ld r31,X
443 0194 1797 sbiw r26,6+1
444 0196 4281 ldd r20,Z+2
445 0198 5381 ldd r21,Z+3
446 019a 60E0 ldi r22,lo8(.LC17)
447 019c 70E0 ldi r23,hi8(.LC17)
448 019e CE01 movw r24,r28
449 01a0 0E94 0000 call WriteTag
450 01a4 40E0 ldi r20,lo8(.LC21)
451 01a6 50E0 ldi r21,hi8(.LC21)
452 01a8 60E0 ldi r22,lo8(.LC19)
453 01aa 70E0 ldi r23,hi8(.LC19)
454 01ac CE01 movw r24,r28
455 01ae 0E94 0000 call WriteTag
456 01b2 BE01 movw r22,r28
457 01b4 80E0 ldi r24,lo8(.LC20)
458 01b6 90E0 ldi r25,hi8(.LC20)
459 01b8 0E94 0000 call fputs
460 01bc F701 movw r30,r14
461 01be E080 ld r14,Z
462 01c0 F180 ldd r15,Z+1
463 01c2 00C0 rjmp .L26
464 .L49:
465 01c4 80E0 ldi r24,lo8(.LC22)
466 01c6 90E0 ldi r25,hi8(.LC22)
467 01c8 0E94 0000 call fputs
468 .L23:
469 01cc BE01 movw r22,r28
470 01ce 80E0 ldi r24,lo8(.LC23)
471 01d0 90E0 ldi r25,hi8(.LC23)
472 01d2 0E94 0000 call fputs
473 01d6 D801 movw r26,r16
474 01d8 0D91 ld r16,X+
475 01da 1C91 ld r17,X
476 01dc 0115 cp r16,__zero_reg__
477 01de 1105 cpc r17,__zero_reg__
478 01e0 01F0 breq .+2
479 01e2 00C0 rjmp .L28
480 01e4 BE01 movw r22,r28
481 01e6 80E0 ldi r24,lo8(.LC24)
482 01e8 90E0 ldi r25,hi8(.LC24)
483 01ea 0E94 0000 call fputs
484 .L34:
485 01ee F601 movw r30,r12
GAS LISTING /tmp/ccEHcQCQ.s page 11
486 01f0 0085 ldd r16,Z+8
487 01f2 1185 ldd r17,Z+9
488 01f4 0115 cp r16,__zero_reg__
489 01f6 1105 cpc r17,__zero_reg__
490 01f8 01F4 brne .+2
491 01fa 00C0 rjmp .L29
492 01fc BE01 movw r22,r28
493 01fe 80E0 ldi r24,lo8(.LC25)
494 0200 90E0 ldi r25,hi8(.LC25)
495 0202 0E94 0000 call fputs
496 0206 80E0 ldi r24,lo8(.LC26)
497 0208 E82E mov r14,r24
498 020a 80E0 ldi r24,hi8(.LC26)
499 020c F82E mov r15,r24
500 .L31:
501 020e D801 movw r26,r16
502 0210 1496 adiw r26,4
503 0212 8D91 ld r24,X+
504 0214 9C91 ld r25,X
505 0216 1597 sbiw r26,4+1
506 0218 892B or r24,r25
507 021a 01F4 brne .L35
508 021c 80E0 ldi r24,lo8(.LC11)
509 021e 90E0 ldi r25,hi8(.LC11)
510 0220 00C0 rjmp .L30
511 .L35:
512 0222 80E0 ldi r24,lo8(.LC10)
513 0224 90E0 ldi r25,hi8(.LC10)
514 .L30:
515 0226 9F93 push r25
516 0228 8F93 push r24
517 022a FF92 push r15
518 022c EF92 push r14
519 022e DF93 push r29
520 0230 CF93 push r28
521 0232 0E94 0000 call fprintf
522 0236 F801 movw r30,r16
523 0238 4281 ldd r20,Z+2
524 023a 5381 ldd r21,Z+3
525 023c 60E0 ldi r22,lo8(.LC14)
526 023e 70E0 ldi r23,hi8(.LC14)
527 0240 CE01 movw r24,r28
528 0242 0E94 0000 call WriteTag
529 0246 D801 movw r26,r16
530 0248 8D91 ld r24,X+
531 024a 9C91 ld r25,X
532 024c 0E94 0000 call UpnpVarTypeString
533 0250 AC01 movw r20,r24
534 0252 60E0 ldi r22,lo8(.LC27)
535 0254 70E0 ldi r23,hi8(.LC27)
536 0256 CE01 movw r24,r28
537 0258 0E94 0000 call WriteTag
538 025c F801 movw r30,r16
539 025e 4681 ldd r20,Z+6
540 0260 5781 ldd r21,Z+7
541 0262 60E0 ldi r22,lo8(.LC28)
542 0264 70E0 ldi r23,hi8(.LC28)
GAS LISTING /tmp/ccEHcQCQ.s page 12
543 0266 CE01 movw r24,r28
544 0268 0E94 0000 call WriteTag
545 026c BE01 movw r22,r28
546 026e 80E0 ldi r24,lo8(.LC29)
547 0270 90E0 ldi r25,hi8(.LC29)
548 0272 0E94 0000 call fputs
549 0276 D801 movw r26,r16
550 0278 1896 adiw r26,8
551 027a 0D91 ld r16,X+
552 027c 1C91 ld r17,X
553 027e 1997 sbiw r26,8+1
554 0280 0F90 pop __tmp_reg__
555 0282 0F90 pop __tmp_reg__
556 0284 0F90 pop __tmp_reg__
557 0286 0F90 pop __tmp_reg__
558 0288 0F90 pop __tmp_reg__
559 028a 0F90 pop __tmp_reg__
560 028c 0115 cp r16,__zero_reg__
561 028e 1105 cpc r17,__zero_reg__
562 0290 01F0 breq .+2
563 0292 00C0 rjmp .L31
564 0294 BE01 movw r22,r28
565 0296 80E0 ldi r24,lo8(.LC30)
566 0298 90E0 ldi r25,hi8(.LC30)
567 029a 0E94 0000 call fputs
568 .L29:
569 029e BE01 movw r22,r28
570 02a0 80E0 ldi r24,lo8(.LC31)
571 02a2 90E0 ldi r25,hi8(.LC31)
572 02a4 0E94 0000 call fputs
573 .L32:
574 02a8 CE01 movw r24,r28
575 02aa 0E94 0000 call fflush
576 02ae 80E0 ldi r24,0
577 02b0 90E0 ldi r25,0
578 /* epilogue start */
579 02b2 DF91 pop r29
580 02b4 CF91 pop r28
581 02b6 1F91 pop r17
582 02b8 0F91 pop r16
583 02ba FF90 pop r15
584 02bc EF90 pop r14
585 02be DF90 pop r13
586 02c0 CF90 pop r12
587 02c2 BF90 pop r11
588 02c4 AF90 pop r10
589 02c6 0895 ret
590 .size UpnpCgiServiceDescription, .-UpnpCgiServiceDescription
591 .section .rodata.str1.1
592 .LC33:
593 01fb 3C73 6572 .string "\r\n"
593 7669 6365
593 4C69 7374
593 3E0D 0A00
594 .LC34:
595 020b 3C73 6572 .string "\r\n"
595 7669 6365
GAS LISTING /tmp/ccEHcQCQ.s page 13
595 3E0D 0A00
596 .LC35:
597 0217 3C73 6572 .string "urn:schemas-upnp-org:service:%s:1\r\n"
597 7669 6365
597 5479 7065
597 3E75 726E
597 3A73 6368
598 .LC36:
599 0256 3C73 6572 .string "urn:upnp-org:serviceId:%s:1\r\n"
599 7669 6365
599 4964 3E75
599 726E 3A75
599 706E 702D
600 .LC37:
601 028b 3C53 4350 .string "%s?%s=%s"
601 4455 524C
601 3E25 733F
601 2573 3D25
601 733C 2F53
602 .LC38:
603 02a7 3C63 6F6E .string "%s?%s=%s"
603 7472 6F6C
603 5552 4C3E
603 2573 3F25
603 733D 2573
604 .LC39:
605 02c9 3C65 7665 .string "%s?%s=%s"
605 6E74 5375
605 6255 524C
605 3E25 733F
605 2573 3D25
606 .LC40:
607 02ed 3C2F 7365 .string "\r\n"
607 7276 6963
607 653E 0D0A
607 00
608 .LC41:
609 02fa 3C2F 7365 .string "\r\n"
609 7276 6963
609 654C 6973
609 743E 0D0A
609 00
610 .LC42:
611 030b 7072 6573 .string "presentationURL"
611 656E 7461
611 7469 6F6E
611 5552 4C00
612 .LC43:
613 031b 3C2F 6465 .string "\r\n"
613 7669 6365
613 3E0D 0A00
614 .LC44:
615 0327 3C2F 726F .string "\r\n"
615 6F74 3E0D
615 0A00
616 .LC45:
617 0331 3C72 6F6F .string "\r\n"
GAS LISTING /tmp/ccEHcQCQ.s page 14
617 7420 786D
617 6C6E 733D
617 2275 726E
617 3A73 6368
618 .LC46:
619 0362 3C64 6576 .string "\r\n"
619 6963 653E
619 0D0A 00
620 .LC47:
621 036d 3C64 6576 .string "urn:%s:device:%s:1\r\n"
621 6963 6554
621 7970 653E
621 7572 6E3A
621 2573 3A64
622 .LC48:
623 039b 6672 6965 .string "friendlyName"
623 6E64 6C79
623 4E61 6D65
623 00
624 .LC49:
625 03a8 6D61 6E75 .string "manufacturer"
625 6661 6374
625 7572 6572
625 00
626 .LC50:
627 03b5 6874 7470 .string "http://"
627 3A2F 2F00
628 .LC51:
629 03bd 6D61 6E75 .string "manufacturerURL"
629 6661 6374
629 7572 6572
629 5552 4C00
630 .LC52:
631 03cd 6D6F 6465 .string "modelDescription"
631 6C44 6573
631 6372 6970
631 7469 6F6E
631 00
632 .LC53:
633 03de 6D6F 6465 .string "modelName"
633 6C4E 616D
633 6500
634 .LC54:
635 03e8 6D6F 6465 .string "modelNumber"
635 6C4E 756D
635 6265 7200
636 .LC55:
637 03f4 6D6F 6465 .string "modelURL"
637 6C55 524C
637 00
638 .LC56:
639 03fd 5544 4E00 .string "UDN"
640 .section .text.UpnpCgiDeviceDescription,"ax",@progbits
641 .type UpnpCgiDeviceDescription, @function
642 UpnpCgiDeviceDescription:
643 0000 2F92 push r2
644 0002 3F92 push r3
GAS LISTING /tmp/ccEHcQCQ.s page 15
645 0004 4F92 push r4
646 0006 5F92 push r5
647 0008 6F92 push r6
648 000a 7F92 push r7
649 000c 8F92 push r8
650 000e 9F92 push r9
651 0010 AF92 push r10
652 0012 BF92 push r11
653 0014 CF92 push r12
654 0016 DF92 push r13
655 0018 EF92 push r14
656 001a FF92 push r15
657 001c 0F93 push r16
658 001e 1F93 push r17
659 0020 CF93 push r28
660 0022 DF93 push r29
661 /* prologue: function */
662 /* frame size = 0 */
663 /* stack size = 18 */
664 .L__stack_usage = 18
665 0024 8C01 movw r16,r24
666 0026 DC01 movw r26,r24
667 0028 3C90 ld r3,X
668 002a 1196 adiw r26,1
669 002c 2C90 ld r2,X
670 002e 0296 adiw r24,2
671 0030 0E94 0000 call HttpArgParseFirst
672 0034 7C01 movw r14,r24
673 0036 892B or r24,r25
674 0038 01F4 brne .+2
675 003a 00C0 rjmp .L51
676 003c C091 0000 lds r28,device_registration
677 0040 D091 0000 lds r29,device_registration+1
678 .L52:
679 0044 2097 sbiw r28,0
680 0046 01F4 brne .+2
681 0048 00C0 rjmp .L51
682 004a B701 movw r22,r14
683 004c 8C85 ldd r24,Y+12
684 004e 9D85 ldd r25,Y+13
685 0050 0E94 0000 call strcmp
686 0054 892B or r24,r25
687 0056 01F0 breq .L53
688 0058 0990 ld __tmp_reg__,Y+
689 005a D881 ld r29,Y
690 005c C02D mov r28,__tmp_reg__
691 005e 00C0 rjmp .L52
692 .L53:
693 0060 E888 ldd r14,Y+16
694 0062 F988 ldd r15,Y+17
695 0064 F801 movw r30,r16
696 0066 8081 ld r24,Z
697 0068 9181 ldd r25,Z+1
698 006a 0E94 0000 call XmlHead
699 006e D801 movw r26,r16
700 0070 6D91 ld r22,X+
701 0072 7C91 ld r23,X
GAS LISTING /tmp/ccEHcQCQ.s page 16
702 0074 80E0 ldi r24,lo8(.LC45)
703 0076 90E0 ldi r25,hi8(.LC45)
704 0078 0E94 0000 call fputs
705 007c 832D mov r24,r3
706 007e 922D mov r25,r2
707 0080 0E94 0000 call SpecVersion
708 0084 632D mov r22,r3
709 0086 722D mov r23,r2
710 0088 80E0 ldi r24,lo8(.LC46)
711 008a 90E0 ldi r25,hi8(.LC46)
712 008c 0E94 0000 call fputs
713 0090 8D85 ldd r24,Y+13
714 0092 8F93 push r24
715 0094 8C85 ldd r24,Y+12
716 0096 8F93 push r24
717 0098 8B85 ldd r24,Y+11
718 009a 8F93 push r24
719 009c 8A85 ldd r24,Y+10
720 009e 8F93 push r24
721 00a0 80E0 ldi r24,lo8(.LC47)
722 00a2 90E0 ldi r25,hi8(.LC47)
723 00a4 9F93 push r25
724 00a6 8F93 push r24
725 00a8 2F92 push r2
726 00aa 3F92 push r3
727 00ac 0E94 0000 call fprintf
728 00b0 F701 movw r30,r14
729 00b2 4081 ld r20,Z
730 00b4 5181 ldd r21,Z+1
731 00b6 60E0 ldi r22,lo8(.LC48)
732 00b8 70E0 ldi r23,hi8(.LC48)
733 00ba 832D mov r24,r3
734 00bc 922D mov r25,r2
735 00be 0E94 0000 call WriteTag
736 00c2 D701 movw r26,r14
737 00c4 1696 adiw r26,6
738 00c6 ED91 ld r30,X+
739 00c8 FC91 ld r31,X
740 00ca 1797 sbiw r26,6+1
741 00cc 4081 ld r20,Z
742 00ce 5181 ldd r21,Z+1
743 00d0 60E0 ldi r22,lo8(.LC49)
744 00d2 70E0 ldi r23,hi8(.LC49)
745 00d4 832D mov r24,r3
746 00d6 922D mov r25,r2
747 00d8 0E94 0000 call WriteTag
748 00dc D701 movw r26,r14
749 00de 1696 adiw r26,6
750 00e0 ED91 ld r30,X+
751 00e2 FC91 ld r31,X
752 00e4 1797 sbiw r26,6+1
753 00e6 4281 ldd r20,Z+2
754 00e8 5381 ldd r21,Z+3
755 00ea 20E0 ldi r18,lo8(.LC50)
756 00ec 30E0 ldi r19,hi8(.LC50)
757 00ee 60E0 ldi r22,lo8(.LC51)
758 00f0 70E0 ldi r23,hi8(.LC51)
GAS LISTING /tmp/ccEHcQCQ.s page 17
759 00f2 832D mov r24,r3
760 00f4 922D mov r25,r2
761 00f6 0E94 0000 call WritePrepTag
762 00fa D701 movw r26,r14
763 00fc 1496 adiw r26,4
764 00fe ED91 ld r30,X+
765 0100 FC91 ld r31,X
766 0102 1597 sbiw r26,4+1
767 0104 4481 ldd r20,Z+4
768 0106 5581 ldd r21,Z+5
769 0108 60E0 ldi r22,lo8(.LC52)
770 010a 70E0 ldi r23,hi8(.LC52)
771 010c 832D mov r24,r3
772 010e 922D mov r25,r2
773 0110 0E94 0000 call WriteTag
774 0114 D701 movw r26,r14
775 0116 1496 adiw r26,4
776 0118 ED91 ld r30,X+
777 011a FC91 ld r31,X
778 011c 1597 sbiw r26,4+1
779 011e 4081 ld r20,Z
780 0120 5181 ldd r21,Z+1
781 0122 60E0 ldi r22,lo8(.LC53)
782 0124 70E0 ldi r23,hi8(.LC53)
783 0126 832D mov r24,r3
784 0128 922D mov r25,r2
785 012a 0E94 0000 call WriteTag
786 012e D701 movw r26,r14
787 0130 1496 adiw r26,4
788 0132 ED91 ld r30,X+
789 0134 FC91 ld r31,X
790 0136 1597 sbiw r26,4+1
791 0138 4281 ldd r20,Z+2
792 013a 5381 ldd r21,Z+3
793 013c 60E0 ldi r22,lo8(.LC54)
794 013e 70E0 ldi r23,hi8(.LC54)
795 0140 832D mov r24,r3
796 0142 922D mov r25,r2
797 0144 0E94 0000 call WriteTag
798 0148 D701 movw r26,r14
799 014a 1496 adiw r26,4
800 014c ED91 ld r30,X+
801 014e FC91 ld r31,X
802 0150 1597 sbiw r26,4+1
803 0152 4681 ldd r20,Z+6
804 0154 5781 ldd r21,Z+7
805 0156 20E0 ldi r18,lo8(.LC50)
806 0158 30E0 ldi r19,hi8(.LC50)
807 015a 60E0 ldi r22,lo8(.LC55)
808 015c 70E0 ldi r23,hi8(.LC55)
809 015e 832D mov r24,r3
810 0160 922D mov r25,r2
811 0162 0E94 0000 call WritePrepTag
812 0166 4E81 ldd r20,Y+6
813 0168 5F81 ldd r21,Y+7
814 016a 60E0 ldi r22,lo8(.LC56)
815 016c 70E0 ldi r23,hi8(.LC56)
GAS LISTING /tmp/ccEHcQCQ.s page 18
816 016e 832D mov r24,r3
817 0170 922D mov r25,r2
818 0172 0E94 0000 call WriteTag
819 0176 EDB7 in r30,__SP_L__
820 0178 FEB7 in r31,__SP_H__
821 017a 3896 adiw r30,8
822 017c 0FB6 in __tmp_reg__,__SREG__
823 017e F894 cli
824 0180 FEBF out __SP_H__,r31
825 0182 0FBE out __SREG__,__tmp_reg__
826 0184 EDBF out __SP_L__,r30
827 0186 8C81 ldd r24,Y+4
828 0188 9D81 ldd r25,Y+5
829 018a 892B or r24,r25
830 018c 01F4 brne .+2
831 018e 00C0 rjmp .L58
832 0190 632D mov r22,r3
833 0192 722D mov r23,r2
834 0194 80E0 ldi r24,lo8(.LC33)
835 0196 90E0 ldi r25,hi8(.LC33)
836 0198 0E94 0000 call fputs
837 019c 0C81 ldd r16,Y+4
838 019e 1D81 ldd r17,Y+5
839 01a0 80E0 ldi r24,lo8(.LC36)
840 01a2 482E mov r4,r24
841 01a4 80E0 ldi r24,hi8(.LC36)
842 01a6 582E mov r5,r24
843 01a8 90E0 ldi r25,lo8(.LC37)
844 01aa 692E mov r6,r25
845 01ac 90E0 ldi r25,hi8(.LC37)
846 01ae 792E mov r7,r25
847 01b0 20E0 ldi r18,lo8(.LC38)
848 01b2 A22E mov r10,r18
849 01b4 20E0 ldi r18,hi8(.LC38)
850 01b6 B22E mov r11,r18
851 01b8 30E0 ldi r19,lo8(.LC39)
852 01ba 832E mov r8,r19
853 01bc 30E0 ldi r19,hi8(.LC39)
854 01be 932E mov r9,r19
855 .L55:
856 01c0 0115 cp r16,__zero_reg__
857 01c2 1105 cpc r17,__zero_reg__
858 01c4 01F4 brne .+2
859 01c6 00C0 rjmp .L63
860 01c8 EC81 ldd r30,Y+4
861 01ca FD81 ldd r31,Y+5
862 01cc C084 ldd r12,Z+8
863 01ce D184 ldd r13,Z+9
864 01d0 632D mov r22,r3
865 01d2 722D mov r23,r2
866 01d4 80E0 ldi r24,lo8(.LC34)
867 01d6 90E0 ldi r25,hi8(.LC34)
868 01d8 0E94 0000 call fputs
869 01dc EC81 ldd r30,Y+4
870 01de FD81 ldd r31,Y+5
871 01e0 8781 ldd r24,Z+7
872 01e2 8F93 push r24
GAS LISTING /tmp/ccEHcQCQ.s page 19
873 01e4 8681 ldd r24,Z+6
874 01e6 8F93 push r24
875 01e8 A0E0 ldi r26,lo8(.LC35)
876 01ea B0E0 ldi r27,hi8(.LC35)
877 01ec BF93 push r27
878 01ee AF93 push r26
879 01f0 2F92 push r2
880 01f2 3F92 push r3
881 01f4 0E94 0000 call fprintf
882 01f8 EC81 ldd r30,Y+4
883 01fa FD81 ldd r31,Y+5
884 01fc 8781 ldd r24,Z+7
885 01fe 8F93 push r24
886 0200 8681 ldd r24,Z+6
887 0202 8F93 push r24
888 0204 5F92 push r5
889 0206 4F92 push r4
890 0208 2F92 push r2
891 020a 3F92 push r3
892 020c 0E94 0000 call fprintf
893 0210 D801 movw r26,r16
894 0212 1796 adiw r26,7
895 0214 8C91 ld r24,X
896 0216 1797 sbiw r26,7
897 0218 8F93 push r24
898 021a 1696 adiw r26,6
899 021c 8C91 ld r24,X
900 021e 8F93 push r24
901 0220 8D85 ldd r24,Y+13
902 0222 8F93 push r24
903 0224 8C85 ldd r24,Y+12
904 0226 8F93 push r24
905 0228 F601 movw r30,r12
906 022a 8181 ldd r24,Z+1
907 022c 8F93 push r24
908 022e 8081 ld r24,Z
909 0230 8F93 push r24
910 0232 7F92 push r7
911 0234 6F92 push r6
912 0236 2F92 push r2
913 0238 3F92 push r3
914 023a 0E94 0000 call fprintf
915 023e D801 movw r26,r16
916 0240 1796 adiw r26,7
917 0242 8C91 ld r24,X
918 0244 1797 sbiw r26,7
919 0246 8F93 push r24
920 0248 1696 adiw r26,6
921 024a 8C91 ld r24,X
922 024c 8F93 push r24
923 024e 8D85 ldd r24,Y+13
924 0250 8F93 push r24
925 0252 8C85 ldd r24,Y+12
926 0254 8F93 push r24
927 0256 F601 movw r30,r12
928 0258 8381 ldd r24,Z+3
929 025a 8F93 push r24
GAS LISTING /tmp/ccEHcQCQ.s page 20
930 025c 8281 ldd r24,Z+2
931 025e 8F93 push r24
932 0260 BF92 push r11
933 0262 AF92 push r10
934 0264 2F92 push r2
935 0266 3F92 push r3
936 0268 0E94 0000 call fprintf
937 026c 8DB7 in r24,__SP_L__
938 026e 9EB7 in r25,__SP_H__
939 0270 8096 adiw r24,32
940 0272 0FB6 in __tmp_reg__,__SREG__
941 0274 F894 cli
942 0276 9EBF out __SP_H__,r25
943 0278 0FBE out __SREG__,__tmp_reg__
944 027a 8DBF out __SP_L__,r24
945 027c D801 movw r26,r16
946 027e 1796 adiw r26,7
947 0280 8C91 ld r24,X
948 0282 1797 sbiw r26,7
949 0284 8F93 push r24
950 0286 1696 adiw r26,6
951 0288 8C91 ld r24,X
952 028a 8F93 push r24
953 028c 8D85 ldd r24,Y+13
954 028e 8F93 push r24
955 0290 8C85 ldd r24,Y+12
956 0292 8F93 push r24
957 0294 F601 movw r30,r12
958 0296 8581 ldd r24,Z+5
959 0298 8F93 push r24
960 029a 8481 ldd r24,Z+4
961 029c 8F93 push r24
962 029e 9F92 push r9
963 02a0 8F92 push r8
964 02a2 2F92 push r2
965 02a4 3F92 push r3
966 02a6 0E94 0000 call fprintf
967 02aa 632D mov r22,r3
968 02ac 722D mov r23,r2
969 02ae 80E0 ldi r24,lo8(.LC40)
970 02b0 90E0 ldi r25,hi8(.LC40)
971 02b2 0E94 0000 call fputs
972 02b6 D801 movw r26,r16
973 02b8 0D91 ld r16,X+
974 02ba 1C91 ld r17,X
975 02bc EDB7 in r30,__SP_L__
976 02be FEB7 in r31,__SP_H__
977 02c0 3A96 adiw r30,10
978 02c2 0FB6 in __tmp_reg__,__SREG__
979 02c4 F894 cli
980 02c6 FEBF out __SP_H__,r31
981 02c8 0FBE out __SREG__,__tmp_reg__
982 02ca EDBF out __SP_L__,r30
983 02cc 00C0 rjmp .L55
984 .L63:
985 02ce 632D mov r22,r3
986 02d0 722D mov r23,r2
GAS LISTING /tmp/ccEHcQCQ.s page 21
987 02d2 80E0 ldi r24,lo8(.LC41)
988 02d4 90E0 ldi r25,hi8(.LC41)
989 02d6 0E94 0000 call fputs
990 .L58:
991 02da D701 movw r26,r14
992 02dc 1296 adiw r26,2
993 02de 4D91 ld r20,X+
994 02e0 5C91 ld r21,X
995 02e2 1397 sbiw r26,2+1
996 02e4 60E0 ldi r22,lo8(.LC42)
997 02e6 70E0 ldi r23,hi8(.LC42)
998 02e8 832D mov r24,r3
999 02ea 922D mov r25,r2
1000 02ec 0E94 0000 call WriteTag
1001 02f0 632D mov r22,r3
1002 02f2 722D mov r23,r2
1003 02f4 80E0 ldi r24,lo8(.LC43)
1004 02f6 90E0 ldi r25,hi8(.LC43)
1005 02f8 0E94 0000 call fputs
1006 02fc 632D mov r22,r3
1007 02fe 722D mov r23,r2
1008 0300 80E0 ldi r24,lo8(.LC44)
1009 0302 90E0 ldi r25,hi8(.LC44)
1010 0304 0E94 0000 call fputs
1011 .L51:
1012 0308 832D mov r24,r3
1013 030a 922D mov r25,r2
1014 030c 0E94 0000 call fflush
1015 0310 80E0 ldi r24,0
1016 0312 90E0 ldi r25,0
1017 /* epilogue start */
1018 0314 DF91 pop r29
1019 0316 CF91 pop r28
1020 0318 1F91 pop r17
1021 031a 0F91 pop r16
1022 031c FF90 pop r15
1023 031e EF90 pop r14
1024 0320 DF90 pop r13
1025 0322 CF90 pop r12
1026 0324 BF90 pop r11
1027 0326 AF90 pop r10
1028 0328 9F90 pop r9
1029 032a 8F90 pop r8
1030 032c 7F90 pop r7
1031 032e 6F90 pop r6
1032 0330 5F90 pop r5
1033 0332 4F90 pop r4
1034 0334 3F90 pop r3
1035 0336 2F90 pop r2
1036 0338 0895 ret
1037 .size UpnpCgiDeviceDescription, .-UpnpCgiDeviceDescription
1038 .section .text.UpnpRegisterDeviceTree,"ax",@progbits
1039 .global UpnpRegisterDeviceTree
1040 .type UpnpRegisterDeviceTree, @function
1041 UpnpRegisterDeviceTree:
1042 0000 CF93 push r28
1043 0002 DF93 push r29
GAS LISTING /tmp/ccEHcQCQ.s page 22
1044 /* prologue: function */
1045 /* frame size = 0 */
1046 /* stack size = 2 */
1047 .L__stack_usage = 2
1048 0004 EB01 movw r28,r22
1049 0006 0097 sbiw r24,0
1050 0008 01F4 brne .L68
1051 000a 8091 0000 lds r24,device_registration
1052 000e 9091 0000 lds r25,device_registration+1
1053 0012 9983 std Y+1,r25
1054 0014 8883 st Y,r24
1055 0016 7093 0000 sts device_registration+1,r23
1056 001a 6093 0000 sts device_registration,r22
1057 001e 60E0 ldi r22,lo8(gs(UpnpCgiDeviceDescription))
1058 0020 70E0 ldi r23,hi8(gs(UpnpCgiDeviceDescription))
1059 0022 8885 ldd r24,Y+8
1060 0024 9985 ldd r25,Y+9
1061 0026 0E94 0000 call HttpRegisterCgiFunction
1062 002a EC81 ldd r30,Y+4
1063 002c FD81 ldd r31,Y+5
1064 002e 0084 ldd __tmp_reg__,Z+8
1065 0030 F185 ldd r31,Z+9
1066 0032 E02D mov r30,__tmp_reg__
1067 0034 60E0 ldi r22,lo8(gs(UpnpCgiServiceDescription))
1068 0036 70E0 ldi r23,hi8(gs(UpnpCgiServiceDescription))
1069 0038 8081 ld r24,Z
1070 003a 9181 ldd r25,Z+1
1071 003c 0E94 0000 call HttpRegisterCgiFunction
1072 0040 8091 0000 lds r24,device_registration
1073 0044 9091 0000 lds r25,device_registration+1
1074 /* epilogue start */
1075 0048 DF91 pop r29
1076 004a CF91 pop r28
1077 004c 0C94 0000 jmp SsdpRegisterDeviceTree
1078 .L68:
1079 0050 FC01 movw r30,r24
1080 0052 7183 std Z+1,r23
1081 0054 6083 st Z,r22
1082 0056 80E0 ldi r24,0
1083 0058 90E0 ldi r25,0
1084 /* epilogue start */
1085 005a DF91 pop r29
1086 005c CF91 pop r28
1087 005e 0895 ret
1088 .size UpnpRegisterDeviceTree, .-UpnpRegisterDeviceTree
1089 .local device_registration
1090 .comm device_registration,2,1
1091 .ident "GCC: (GNU) 5.3.0"
1092 .global __do_copy_data
1093 .global __do_clear_bss
GAS LISTING /tmp/ccEHcQCQ.s page 23
DEFINED SYMBOLS
*ABS*:0000000000000000 upnp_dev.c
/tmp/ccEHcQCQ.s:2 *ABS*:000000000000003e __SP_H__
/tmp/ccEHcQCQ.s:3 *ABS*:000000000000003d __SP_L__
/tmp/ccEHcQCQ.s:4 *ABS*:000000000000003f __SREG__
/tmp/ccEHcQCQ.s:5 *ABS*:000000000000003b __RAMPZ__
/tmp/ccEHcQCQ.s:6 *ABS*:0000000000000000 __tmp_reg__
/tmp/ccEHcQCQ.s:7 *ABS*:0000000000000001 __zero_reg__
/tmp/ccEHcQCQ.s:19 .text.SpecVersion:0000000000000000 SpecVersion
/tmp/ccEHcQCQ.s:54 .text.WritePrepTag:0000000000000000 WritePrepTag
/tmp/ccEHcQCQ.s:135 .text.WriteTag:0000000000000000 WriteTag
/tmp/ccEHcQCQ.s:155 .text.XmlHead:0000000000000000 XmlHead
/tmp/ccEHcQCQ.s:247 .text.UpnpCgiServiceDescription:0000000000000000 UpnpCgiServiceDescription
.bss:0000000000000000 device_registration
/tmp/ccEHcQCQ.s:642 .text.UpnpCgiDeviceDescription:0000000000000000 UpnpCgiDeviceDescription
/tmp/ccEHcQCQ.s:1041 .text.UpnpRegisterDeviceTree:0000000000000000 UpnpRegisterDeviceTree
UNDEFINED SYMBOLS
fputs
fprintf
HttpSendStreamHeaderTop
HttpSendStreamHeaderBottom
HttpArgParseFirst
HttpArgValue
strcmp
UpnpVarTypeString
fflush
HttpRegisterCgiFunction
SsdpRegisterDeviceTree
__do_copy_data
__do_clear_bss