wins.lst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. GAS LISTING /tmp/ccRusmxE.s page 1
  2. 1 .file "wins.c"
  3. 2 __SP_H__ = 0x3e
  4. 3 __SP_L__ = 0x3d
  5. 4 __SREG__ = 0x3f
  6. 5 __RAMPZ__ = 0x3b
  7. 6 __tmp_reg__ = 0
  8. 7 __zero_reg__ = 1
  9. 8 .section .text.NutWinsNameQuery,"ax",@progbits
  10. 9 .global NutWinsNameQuery
  11. 10 .type NutWinsNameQuery, @function
  12. 11 NutWinsNameQuery:
  13. 12 0000 2F92 push r2
  14. 13 0002 3F92 push r3
  15. 14 0004 4F92 push r4
  16. 15 0006 5F92 push r5
  17. 16 0008 6F92 push r6
  18. 17 000a 7F92 push r7
  19. 18 000c 8F92 push r8
  20. 19 000e 9F92 push r9
  21. 20 0010 AF92 push r10
  22. 21 0012 BF92 push r11
  23. 22 0014 CF92 push r12
  24. 23 0016 DF92 push r13
  25. 24 0018 EF92 push r14
  26. 25 001a FF92 push r15
  27. 26 001c 0F93 push r16
  28. 27 001e 1F93 push r17
  29. 28 0020 CF93 push r28
  30. 29 0022 DF93 push r29
  31. 30 0024 CDB7 in r28,__SP_L__
  32. 31 0026 DEB7 in r29,__SP_H__
  33. 32 0028 2A97 sbiw r28,10
  34. 33 002a 0FB6 in __tmp_reg__,__SREG__
  35. 34 002c F894 cli
  36. 35 002e DEBF out __SP_H__,r29
  37. 36 0030 0FBE out __SREG__,__tmp_reg__
  38. 37 0032 CDBF out __SP_L__,r28
  39. 38 /* prologue: function */
  40. 39 /* frame size = 10 */
  41. 40 /* stack size = 28 */
  42. 41 .L__stack_usage = 28
  43. 42 0034 7C01 movw r14,r24
  44. 43 0036 1A01 movw r2,r20
  45. 44 0038 2B01 movw r4,r22
  46. 45 003a FC01 movw r30,r24
  47. 46 0:
  48. 47 003c 0190 ld __tmp_reg__,Z+
  49. 48 003e 0020 tst __tmp_reg__
  50. 49 0040 01F4 brne 0b
  51. 50 0042 3197 sbiw r30,1
  52. 51 0044 E81B sub r30,r24
  53. 52 0046 F90B sbc r31,r25
  54. 53 0048 7097 sbiw r30,16
  55. 54 004a 00F0 brlo .+2
  56. 55 004c 00C0 rjmp .L16
  57. 56 004e 6EE3 ldi r22,lo8(62)
  58. 57 0050 70E0 ldi r23,0
  59. GAS LISTING /tmp/ccRusmxE.s page 2
  60. 58 0052 81E0 ldi r24,lo8(1)
  61. 59 0054 90E0 ldi r25,0
  62. 60 0056 0E94 0000 call calloc
  63. 61 005a 5C01 movw r10,r24
  64. 62 005c 892B or r24,r25
  65. 63 005e 01F4 brne .+2
  66. 64 0060 00C0 rjmp .L16
  67. 65 0062 61E0 ldi r22,lo8(1)
  68. 66 0064 70E0 ldi r23,0
  69. 67 0066 81E2 ldi r24,lo8(33)
  70. 68 0068 90E0 ldi r25,0
  71. 69 006a 0E94 0000 call calloc
  72. 70 006e 4C01 movw r8,r24
  73. 71 0070 892B or r24,r25
  74. 72 0072 01F4 brne .+2
  75. 73 0074 00C0 rjmp .L3
  76. 74 0076 89E8 ldi r24,lo8(-119)
  77. 75 0078 90E0 ldi r25,0
  78. 76 007a 0E94 0000 call NutUdpCreateSocket
  79. 77 007e 3C01 movw r6,r24
  80. 78 0080 892B or r24,r25
  81. 79 0082 01F4 brne .+2
  82. 80 0084 00C0 rjmp .L3
  83. 81 0086 6401 movw r12,r8
  84. 82 0088 8FEF ldi r24,-1
  85. 83 008a C81A sub r12,r24
  86. 84 008c D80A sbc r13,r24
  87. 85 008e 9701 movw r18,r14
  88. 86 0090 00E0 ldi r16,0
  89. 87 0092 10E0 ldi r17,0
  90. 88 .L8:
  91. 89 0094 F701 movw r30,r14
  92. 90 0:
  93. 91 0096 0190 ld __tmp_reg__,Z+
  94. 92 0098 0020 tst __tmp_reg__
  95. 93 009a 01F4 brne 0b
  96. 94 009c 3197 sbiw r30,1
  97. 95 009e EE19 sub r30,r14
  98. 96 00a0 FF09 sbc r31,r15
  99. 97 00a2 0E17 cp r16,r30
  100. 98 00a4 1F07 cpc r17,r31
  101. 99 00a6 00F4 brsh .L12
  102. 100 00a8 F901 movw r30,r18
  103. 101 00aa 8081 ld r24,Z
  104. 102 00ac 082E mov __tmp_reg__,r24
  105. 103 00ae 000C lsl r0
  106. 104 00b0 990B sbc r25,r25
  107. 105 00b2 00C0 rjmp .L6
  108. 106 .L12:
  109. 107 00b4 80E2 ldi r24,lo8(32)
  110. 108 00b6 90E0 ldi r25,0
  111. 109 .L6:
  112. 110 00b8 2987 std Y+9,r18
  113. 111 00ba 3A87 std Y+10,r19
  114. 112 00bc 0E94 0000 call toupper
  115. 113 00c0 2985 ldd r18,Y+9
  116. 114 00c2 3A85 ldd r19,Y+10
  117. GAS LISTING /tmp/ccRusmxE.s page 3
  118. 115 00c4 0F30 cpi r16,15
  119. 116 00c6 1105 cpc r17,__zero_reg__
  120. 117 00c8 01F4 brne .L7
  121. 118 00ca 80E0 ldi r24,0
  122. 119 .L7:
  123. 120 00cc F601 movw r30,r12
  124. 121 00ce 3197 sbiw r30,1
  125. 122 00d0 982F mov r25,r24
  126. 123 00d2 9295 swap r25
  127. 124 00d4 9F70 andi r25,lo8(15)
  128. 125 00d6 9F5B subi r25,lo8(-(65))
  129. 126 00d8 9083 st Z,r25
  130. 127 00da 8F70 andi r24,lo8(15)
  131. 128 00dc 8F5B subi r24,lo8(-(65))
  132. 129 00de F601 movw r30,r12
  133. 130 00e0 8083 st Z,r24
  134. 131 00e2 0F5F subi r16,-1
  135. 132 00e4 1F4F sbci r17,-1
  136. 133 00e6 F2E0 ldi r31,2
  137. 134 00e8 CF0E add r12,r31
  138. 135 00ea D11C adc r13,__zero_reg__
  139. 136 00ec 2F5F subi r18,-1
  140. 137 00ee 3F4F sbci r19,-1
  141. 138 00f0 0031 cpi r16,16
  142. 139 00f2 1105 cpc r17,__zero_reg__
  143. 140 00f4 01F4 brne .L8
  144. 141 00f6 F401 movw r30,r8
  145. 142 00f8 10A2 std Z+32,__zero_reg__
  146. 143 00fa C501 movw r24,r10
  147. 144 00fc 0D96 adiw r24,13
  148. 145 00fe 9887 std Y+8,r25
  149. 146 0100 8F83 std Y+7,r24
  150. 147 .L9:
  151. 148 0102 C12C mov r12,__zero_reg__
  152. 149 0104 D12C mov r13,__zero_reg__
  153. 150 0106 7601 movw r14,r12
  154. 151 0108 0EE3 ldi r16,lo8(62)
  155. 152 010a 10E0 ldi r17,0
  156. 153 010c 9501 movw r18,r10
  157. 154 010e AE01 movw r20,r28
  158. 155 0110 4B5F subi r20,-5
  159. 156 0112 5F4F sbci r21,-1
  160. 157 0114 BE01 movw r22,r28
  161. 158 0116 6F5F subi r22,-1
  162. 159 0118 7F4F sbci r23,-1
  163. 160 011a C301 movw r24,r6
  164. 161 011c 0E94 0000 call NutUdpReceiveFrom
  165. 162 0120 F501 movw r30,r10
  166. 163 0122 8281 ldd r24,Z+2
  167. 164 0124 9381 ldd r25,Z+3
  168. 165 /* #APP */
  169. 166 ; 309 "../../nut/include/sys/types.h" 1
  170. 167 0126 082E mov __tmp_reg__, r24
  171. 168 0128 892F mov r24, r25
  172. 169 012a 902D mov r25, __tmp_reg__
  173. 170
  174. 171 ; 0 "" 2
  175. GAS LISTING /tmp/ccRusmxE.s page 4
  176. 172 /* #NOAPP */
  177. 173 012c 8827 clr r24
  178. 174 012e 987F andi r25,248
  179. 175 0130 892B or r24,r25
  180. 176 0132 01F4 brne .L9
  181. 177 0134 8481 ldd r24,Z+4
  182. 178 0136 9581 ldd r25,Z+5
  183. 179 /* #APP */
  184. 180 ; 309 "../../nut/include/sys/types.h" 1
  185. 181 0138 082E mov __tmp_reg__, r24
  186. 182 013a 892F mov r24, r25
  187. 183 013c 902D mov r25, __tmp_reg__
  188. 184
  189. 185 ; 0 "" 2
  190. 186 /* #NOAPP */
  191. 187 013e 0197 sbiw r24,1
  192. 188 0140 01F4 brne .L9
  193. 189 0142 8485 ldd r24,Z+12
  194. 190 0144 8032 cpi r24,lo8(32)
  195. 191 0146 01F4 brne .L9
  196. 192 0148 86A5 ldd r24,Z+46
  197. 193 014a 97A5 ldd r25,Z+47
  198. 194 /* #APP */
  199. 195 ; 309 "../../nut/include/sys/types.h" 1
  200. 196 014c 082E mov __tmp_reg__, r24
  201. 197 014e 892F mov r24, r25
  202. 198 0150 902D mov r25, __tmp_reg__
  203. 199
  204. 200 ; 0 "" 2
  205. 201 /* #NOAPP */
  206. 202 0152 8097 sbiw r24,32
  207. 203 0154 01F4 brne .L9
  208. 204 0156 00A9 ldd r16,Z+48
  209. 205 0158 11A9 ldd r17,Z+49
  210. 206 /* #APP */
  211. 207 ; 309 "../../nut/include/sys/types.h" 1
  212. 208 015a 002E mov __tmp_reg__, r16
  213. 209 015c 012F mov r16, r17
  214. 210 015e 102D mov r17, __tmp_reg__
  215. 211
  216. 212 ; 0 "" 2
  217. 213 /* #NOAPP */
  218. 214 0160 0130 cpi r16,1
  219. 215 0162 1105 cpc r17,__zero_reg__
  220. 216 0164 01F0 breq .+2
  221. 217 0166 00C0 rjmp .L9
  222. 218 0168 B401 movw r22,r8
  223. 219 016a 8F81 ldd r24,Y+7
  224. 220 016c 9885 ldd r25,Y+8
  225. 221 016e 0E94 0000 call strcmp
  226. 222 0172 892B or r24,r25
  227. 223 0174 01F0 breq .+2
  228. 224 0176 00C0 rjmp .L9
  229. 225 0178 80E8 ldi r24,lo8(-128)
  230. 226 017a 95E8 ldi r25,lo8(-123)
  231. 227 /* #APP */
  232. 228 ; 309 "../../nut/include/sys/types.h" 1
  233. GAS LISTING /tmp/ccRusmxE.s page 5
  234. 229 017c 082E mov __tmp_reg__, r24
  235. 230 017e 892F mov r24, r25
  236. 231 0180 902D mov r25, __tmp_reg__
  237. 232
  238. 233 ; 0 "" 2
  239. 234 /* #NOAPP */
  240. 235 0182 F501 movw r30,r10
  241. 236 0184 9383 std Z+3,r25
  242. 237 0186 8283 std Z+2,r24
  243. 238 /* #APP */
  244. 239 ; 309 "../../nut/include/sys/types.h" 1
  245. 240 0188 002E mov __tmp_reg__, r16
  246. 241 018a 012F mov r16, r17
  247. 242 018c 102D mov r17, __tmp_reg__
  248. 243
  249. 244 ; 0 "" 2
  250. 245 /* #NOAPP */
  251. 246 018e 1783 std Z+7,r17
  252. 247 0190 0683 std Z+6,r16
  253. 248 0192 8CE3 ldi r24,lo8(60)
  254. 249 0194 90E0 ldi r25,0
  255. 250 0196 A0E0 ldi r26,0
  256. 251 0198 B0E0 ldi r27,0
  257. 252 /* #APP */
  258. 253 ; 319 "../../nut/include/sys/types.h" 1
  259. 254 019a 082E mov __tmp_reg__, r24
  260. 255 019c 8B2F mov r24, r27
  261. 256 019e B02D mov r27, __tmp_reg__
  262. 257 01a0 092E mov __tmp_reg__, r25
  263. 258 01a2 9A2F mov r25, r26
  264. 259 01a4 A02D mov r26, __tmp_reg__
  265. 260
  266. 261 ; 0 "" 2
  267. 262 /* #NOAPP */
  268. 263 01a6 82AB std Z+50,r24
  269. 264 01a8 93AB std Z+51,r25
  270. 265 01aa A4AB std Z+52,r26
  271. 266 01ac B5AB std Z+53,r27
  272. 267 01ae 86E0 ldi r24,lo8(6)
  273. 268 01b0 90E0 ldi r25,0
  274. 269 /* #APP */
  275. 270 ; 309 "../../nut/include/sys/types.h" 1
  276. 271 01b2 082E mov __tmp_reg__, r24
  277. 272 01b4 892F mov r24, r25
  278. 273 01b6 902D mov r25, __tmp_reg__
  279. 274
  280. 275 ; 0 "" 2
  281. 276 /* #NOAPP */
  282. 277 01b8 97AB std Z+55,r25
  283. 278 01ba 86AB std Z+54,r24
  284. 279 01bc 1582 std Z+5,__zero_reg__
  285. 280 01be 1482 std Z+4,__zero_reg__
  286. 281 01c0 11AE std Z+57,__zero_reg__
  287. 282 01c2 10AE std Z+56,__zero_reg__
  288. 283 01c4 22AE std Z+58,r2
  289. 284 01c6 33AE std Z+59,r3
  290. 285 01c8 44AE std Z+60,r4
  291. GAS LISTING /tmp/ccRusmxE.s page 6
  292. 286 01ca 55AE std Z+61,r5
  293. 287 01cc 4981 ldd r20,Y+1
  294. 288 01ce 5A81 ldd r21,Y+2
  295. 289 01d0 6B81 ldd r22,Y+3
  296. 290 01d2 7C81 ldd r23,Y+4
  297. 291 01d4 8EE3 ldi r24,lo8(62)
  298. 292 01d6 E82E mov r14,r24
  299. 293 01d8 F12C mov r15,__zero_reg__
  300. 294 01da 8501 movw r16,r10
  301. 295 01dc 29E8 ldi r18,lo8(-119)
  302. 296 01de 30E0 ldi r19,0
  303. 297 01e0 C301 movw r24,r6
  304. 298 01e2 0E94 0000 call NutUdpSendTo
  305. 299 01e6 F501 movw r30,r10
  306. 300 01e8 8EE3 ldi r24,lo8(62)
  307. 301 0:
  308. 302 01ea 1192 st Z+,__zero_reg__
  309. 303 01ec 8A95 dec r24
  310. 304 01ee 01F4 brne 0b
  311. 305 01f0 00C0 rjmp .L9
  312. 306 .L3:
  313. 307 01f2 C501 movw r24,r10
  314. 308 01f4 0E94 0000 call free
  315. 309 01f8 8114 cp r8,__zero_reg__
  316. 310 01fa 9104 cpc r9,__zero_reg__
  317. 311 01fc 01F0 breq .L16
  318. 312 01fe C401 movw r24,r8
  319. 313 0200 0E94 0000 call free
  320. 314 .L16:
  321. 315 0204 8FEF ldi r24,lo8(-1)
  322. 316 0206 9FEF ldi r25,lo8(-1)
  323. 317 /* epilogue start */
  324. 318 0208 2A96 adiw r28,10
  325. 319 020a 0FB6 in __tmp_reg__,__SREG__
  326. 320 020c F894 cli
  327. 321 020e DEBF out __SP_H__,r29
  328. 322 0210 0FBE out __SREG__,__tmp_reg__
  329. 323 0212 CDBF out __SP_L__,r28
  330. 324 0214 DF91 pop r29
  331. 325 0216 CF91 pop r28
  332. 326 0218 1F91 pop r17
  333. 327 021a 0F91 pop r16
  334. 328 021c FF90 pop r15
  335. 329 021e EF90 pop r14
  336. 330 0220 DF90 pop r13
  337. 331 0222 CF90 pop r12
  338. 332 0224 BF90 pop r11
  339. 333 0226 AF90 pop r10
  340. 334 0228 9F90 pop r9
  341. 335 022a 8F90 pop r8
  342. 336 022c 7F90 pop r7
  343. 337 022e 6F90 pop r6
  344. 338 0230 5F90 pop r5
  345. 339 0232 4F90 pop r4
  346. 340 0234 3F90 pop r3
  347. 341 0236 2F90 pop r2
  348. 342 0238 0895 ret
  349. GAS LISTING /tmp/ccRusmxE.s page 7
  350. 343 .size NutWinsNameQuery, .-NutWinsNameQuery
  351. 344 .ident "GCC: (GNU) 5.3.0"
  352. GAS LISTING /tmp/ccRusmxE.s page 8
  353. DEFINED SYMBOLS
  354. *ABS*:0000000000000000 wins.c
  355. /tmp/ccRusmxE.s:2 *ABS*:000000000000003e __SP_H__
  356. /tmp/ccRusmxE.s:3 *ABS*:000000000000003d __SP_L__
  357. /tmp/ccRusmxE.s:4 *ABS*:000000000000003f __SREG__
  358. /tmp/ccRusmxE.s:5 *ABS*:000000000000003b __RAMPZ__
  359. /tmp/ccRusmxE.s:6 *ABS*:0000000000000000 __tmp_reg__
  360. /tmp/ccRusmxE.s:7 *ABS*:0000000000000001 __zero_reg__
  361. /tmp/ccRusmxE.s:11 .text.NutWinsNameQuery:0000000000000000 NutWinsNameQuery
  362. UNDEFINED SYMBOLS
  363. calloc
  364. NutUdpCreateSocket
  365. toupper
  366. NutUdpReceiveFrom
  367. strcmp
  368. NutUdpSendTo
  369. free