| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680 |
- GAS LISTING /tmp/cckAKpPV.s page 1
- 1 .file "udpsock.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 .text.NutUdpCreateSocket,"ax",@progbits
- 9 .global NutUdpCreateSocket
- 10 .type NutUdpCreateSocket, @function
- 11 NutUdpCreateSocket:
- 12 0000 CF93 push r28
- 13 0002 DF93 push r29
- 14 /* prologue: function */
- 15 /* frame size = 0 */
- 16 /* stack size = 2 */
- 17 .L__stack_usage = 2
- 18 0004 EC01 movw r28,r24
- 19 0006 8091 0000 lds r24,registered
- 20 000a 8111 cpse r24,__zero_reg__
- 21 000c 00C0 rjmp .L2
- 22 000e 60E0 ldi r22,lo8(gs(NutUdpInput))
- 23 0010 70E0 ldi r23,hi8(gs(NutUdpInput))
- 24 0012 81E1 ldi r24,lo8(17)
- 25 0014 0E94 0000 call NutRegisterIpHandler
- 26 0018 892B or r24,r25
- 27 001a 01F0 breq .+2
- 28 001c 00C0 rjmp .L11
- 29 001e 81E0 ldi r24,lo8(1)
- 30 0020 8093 0000 sts registered,r24
- 31 .L2:
- 32 0024 2097 sbiw r28,0
- 33 0026 01F4 brne .L4
- 34 .L8:
- 35 0028 0E94 0000 call NutGetMillis
- 36 002c 2091 0000 lds r18,last_local_port
- 37 0030 3091 0000 lds r19,last_local_port+1
- 38 0034 2115 cp r18,__zero_reg__
- 39 0036 3105 cpc r19,__zero_reg__
- 40 0038 01F0 breq .L5
- 41 003a 6E70 andi r22,14
- 42 003c 7727 clr r23
- 43 003e 6160 ori r22,1
- 44 0040 620F add r22,r18
- 45 0042 731F adc r23,r19
- 46 .L5:
- 47 0044 7093 0000 sts last_local_port+1,r23
- 48 0048 6093 0000 sts last_local_port,r22
- 49 004c C091 0000 lds r28,last_local_port
- 50 0050 D091 0000 lds r29,last_local_port+1
- 51 0054 D06C ori r29,192
- 52 0056 D093 0000 sts last_local_port+1,r29
- 53 005a C093 0000 sts last_local_port,r28
- 54 005e CE01 movw r24,r28
- 55 /* #APP */
- 56 ; 309 "../../nut/include/sys/types.h" 1
- 57 0060 082E mov __tmp_reg__, r24
- GAS LISTING /tmp/cckAKpPV.s page 2
- 58 0062 892F mov r24, r25
- 59 0064 902D mov r25, __tmp_reg__
- 60
- 61 ; 0 "" 2
- 62 /* #NOAPP */
- 63 0066 E091 0000 lds r30,udpSocketList
- 64 006a F091 0000 lds r31,udpSocketList+1
- 65 .L7:
- 66 006e 3097 sbiw r30,0
- 67 0070 01F0 breq .L4
- 68 0072 2281 ldd r18,Z+2
- 69 0074 3381 ldd r19,Z+3
- 70 0076 2817 cp r18,r24
- 71 0078 3907 cpc r19,r25
- 72 007a 01F0 breq .L8
- 73 007c 0190 ld __tmp_reg__,Z+
- 74 007e F081 ld r31,Z
- 75 0080 E02D mov r30,__tmp_reg__
- 76 0082 00C0 rjmp .L7
- 77 .L4:
- 78 0084 64E1 ldi r22,lo8(20)
- 79 0086 70E0 ldi r23,0
- 80 0088 81E0 ldi r24,lo8(1)
- 81 008a 90E0 ldi r25,0
- 82 008c 0E94 0000 call calloc
- 83 0090 FC01 movw r30,r24
- 84 0092 892B or r24,r25
- 85 0094 01F0 breq .L11
- 86 /* #APP */
- 87 ; 309 "../../nut/include/sys/types.h" 1
- 88 0096 0C2E mov __tmp_reg__, r28
- 89 0098 CD2F mov r28, r29
- 90 009a D02D mov r29, __tmp_reg__
- 91
- 92 ; 0 "" 2
- 93 /* #NOAPP */
- 94 009c D383 std Z+3,r29
- 95 009e C283 std Z+2,r28
- 96 00a0 8091 0000 lds r24,udpSocketList
- 97 00a4 9091 0000 lds r25,udpSocketList+1
- 98 00a8 9183 std Z+1,r25
- 99 00aa 8083 st Z,r24
- 100 00ac F093 0000 sts udpSocketList+1,r31
- 101 00b0 E093 0000 sts udpSocketList,r30
- 102 00b4 CF01 movw r24,r30
- 103 00b6 00C0 rjmp .L3
- 104 .L11:
- 105 00b8 80E0 ldi r24,0
- 106 00ba 90E0 ldi r25,0
- 107 .L3:
- 108 /* epilogue start */
- 109 00bc DF91 pop r29
- 110 00be CF91 pop r28
- 111 00c0 0895 ret
- 112 .size NutUdpCreateSocket, .-NutUdpCreateSocket
- 113 .section .text.NutUdpSendTo,"ax",@progbits
- 114 .global NutUdpSendTo
- GAS LISTING /tmp/cckAKpPV.s page 3
- 115 .type NutUdpSendTo, @function
- 116 NutUdpSendTo:
- 117 0000 6F92 push r6
- 118 0002 7F92 push r7
- 119 0004 8F92 push r8
- 120 0006 9F92 push r9
- 121 0008 AF92 push r10
- 122 000a BF92 push r11
- 123 000c CF92 push r12
- 124 000e DF92 push r13
- 125 0010 EF92 push r14
- 126 0012 FF92 push r15
- 127 0014 0F93 push r16
- 128 0016 1F93 push r17
- 129 0018 CF93 push r28
- 130 001a DF93 push r29
- 131 /* prologue: function */
- 132 /* frame size = 0 */
- 133 /* stack size = 14 */
- 134 .L__stack_usage = 14
- 135 001c 6C01 movw r12,r24
- 136 001e 4A01 movw r8,r20
- 137 0020 5B01 movw r10,r22
- 138 0022 3901 movw r6,r18
- 139 0024 FC01 movw r30,r24
- 140 0026 8485 ldd r24,Z+12
- 141 0028 9585 ldd r25,Z+13
- 142 002a 892B or r24,r25
- 143 002c 01F4 brne .L17
- 144 002e A701 movw r20,r14
- 145 0030 60E8 ldi r22,lo8(-128)
- 146 0032 80E0 ldi r24,0
- 147 0034 90E0 ldi r25,0
- 148 0036 0E94 0000 call NutNetBufAlloc
- 149 003a EC01 movw r28,r24
- 150 003c 892B or r24,r25
- 151 003e 01F4 brne .L16
- 152 0040 8CE0 ldi r24,lo8(12)
- 153 0042 90E0 ldi r25,0
- 154 0044 F601 movw r30,r12
- 155 0046 9587 std Z+13,r25
- 156 0048 8487 std Z+12,r24
- 157 004a 00C0 rjmp .L17
- 158 .L16:
- 159 004c A701 movw r20,r14
- 160 004e B801 movw r22,r16
- 161 0050 8F85 ldd r24,Y+15
- 162 0052 9889 ldd r25,Y+16
- 163 0054 0E94 0000 call memcpy
- 164 0058 8E01 movw r16,r28
- 165 005a 9301 movw r18,r6
- 166 005c B501 movw r22,r10
- 167 005e A401 movw r20,r8
- 168 0060 C601 movw r24,r12
- 169 0062 0E94 0000 call NutUdpOutput
- 170 0066 0097 sbiw r24,0
- 171 0068 01F4 brne .L15
- GAS LISTING /tmp/cckAKpPV.s page 4
- 172 006a CE01 movw r24,r28
- 173 006c 0E94 0000 call NutNetBufFree
- 174 0070 80E0 ldi r24,0
- 175 0072 90E0 ldi r25,0
- 176 0074 00C0 rjmp .L15
- 177 .L17:
- 178 0076 8FEF ldi r24,lo8(-1)
- 179 0078 9FEF ldi r25,lo8(-1)
- 180 .L15:
- 181 /* epilogue start */
- 182 007a DF91 pop r29
- 183 007c CF91 pop r28
- 184 007e 1F91 pop r17
- 185 0080 0F91 pop r16
- 186 0082 FF90 pop r15
- 187 0084 EF90 pop r14
- 188 0086 DF90 pop r13
- 189 0088 CF90 pop r12
- 190 008a BF90 pop r11
- 191 008c AF90 pop r10
- 192 008e 9F90 pop r9
- 193 0090 8F90 pop r8
- 194 0092 7F90 pop r7
- 195 0094 6F90 pop r6
- 196 0096 0895 ret
- 197 .size NutUdpSendTo, .-NutUdpSendTo
- 198 .section .text.NutUdpReceiveFrom,"ax",@progbits
- 199 .global NutUdpReceiveFrom
- 200 .type NutUdpReceiveFrom, @function
- 201 NutUdpReceiveFrom:
- 202 0000 4F92 push r4
- 203 0002 5F92 push r5
- 204 0004 6F92 push r6
- 205 0006 7F92 push r7
- 206 0008 8F92 push r8
- 207 000a 9F92 push r9
- 208 000c AF92 push r10
- 209 000e BF92 push r11
- 210 0010 CF92 push r12
- 211 0012 DF92 push r13
- 212 0014 EF92 push r14
- 213 0016 FF92 push r15
- 214 0018 0F93 push r16
- 215 001a 1F93 push r17
- 216 001c CF93 push r28
- 217 001e DF93 push r29
- 218 /* prologue: function */
- 219 /* frame size = 0 */
- 220 /* stack size = 16 */
- 221 .L__stack_usage = 16
- 222 0020 EC01 movw r28,r24
- 223 0022 3B01 movw r6,r22
- 224 0024 4A01 movw r8,r20
- 225 0026 5901 movw r10,r18
- 226 0028 2801 movw r4,r16
- 227 002a B701 movw r22,r14
- 228 002c A601 movw r20,r12
- GAS LISTING /tmp/cckAKpPV.s page 5
- 229 002e 8C85 ldd r24,Y+12
- 230 0030 9D85 ldd r25,Y+13
- 231 0032 892B or r24,r25
- 232 0034 01F0 breq .L20
- 233 .L23:
- 234 0036 8FEF ldi r24,lo8(-1)
- 235 0038 9FEF ldi r25,lo8(-1)
- 236 003a 00C0 rjmp .L21
- 237 .L20:
- 238 003c 8C81 ldd r24,Y+4
- 239 003e 9D81 ldd r25,Y+5
- 240 0040 892B or r24,r25
- 241 0042 01F4 brne .L22
- 242 0044 CE01 movw r24,r28
- 243 0046 0696 adiw r24,6
- 244 0048 0E94 0000 call NutEventWait
- 245 .L22:
- 246 004c 8C85 ldd r24,Y+12
- 247 004e 9D85 ldd r25,Y+13
- 248 0050 892B or r24,r25
- 249 0052 01F4 brne .L23
- 250 0054 EC80 ldd r14,Y+4
- 251 0056 FD80 ldd r15,Y+5
- 252 0058 E114 cp r14,__zero_reg__
- 253 005a F104 cpc r15,__zero_reg__
- 254 005c 01F4 brne .+2
- 255 005e 00C0 rjmp .L25
- 256 0060 D701 movw r26,r14
- 257 0062 8D91 ld r24,X+
- 258 0064 9C91 ld r25,X
- 259 0066 1197 sbiw r26,1
- 260 0068 9D83 std Y+5,r25
- 261 006a 8C83 std Y+4,r24
- 262 006c 1796 adiw r26,7
- 263 006e ED91 ld r30,X+
- 264 0070 FC91 ld r31,X
- 265 0072 1897 sbiw r26,7+1
- 266 0074 8485 ldd r24,Z+12
- 267 0076 9585 ldd r25,Z+13
- 268 0078 A685 ldd r26,Z+14
- 269 007a B785 ldd r27,Z+15
- 270 007c F301 movw r30,r6
- 271 007e 8083 st Z,r24
- 272 0080 9183 std Z+1,r25
- 273 0082 A283 std Z+2,r26
- 274 0084 B383 std Z+3,r27
- 275 0086 D701 movw r26,r14
- 276 0088 1B96 adiw r26,11
- 277 008a ED91 ld r30,X+
- 278 008c FC91 ld r31,X
- 279 008e 1C97 sbiw r26,11+1
- 280 0090 8081 ld r24,Z
- 281 0092 9181 ldd r25,Z+1
- 282 /* #APP */
- 283 ; 309 "../../nut/include/sys/types.h" 1
- 284 0094 082E mov __tmp_reg__, r24
- 285 0096 892F mov r24, r25
- GAS LISTING /tmp/cckAKpPV.s page 6
- 286 0098 902D mov r25, __tmp_reg__
- 287
- 288 ; 0 "" 2
- 289 /* #NOAPP */
- 290 009a F401 movw r30,r8
- 291 009c 9183 std Z+1,r25
- 292 009e 8083 st Z,r24
- 293 00a0 5196 adiw r26,17
- 294 00a2 8D91 ld r24,X+
- 295 00a4 9C91 ld r25,X
- 296 00a6 5297 sbiw r26,17+1
- 297 00a8 982E mov r9,r24
- 298 00aa 192F mov r17,r25
- 299 00ac 4816 cp r4,r24
- 300 00ae 5906 cpc r5,r25
- 301 00b0 04F4 brge .L24
- 302 00b2 942C mov r9,r4
- 303 00b4 152D mov r17,r5
- 304 .L24:
- 305 00b6 2885 ldd r18,Y+8
- 306 00b8 3985 ldd r19,Y+9
- 307 00ba F901 movw r30,r18
- 308 00bc E81B sub r30,r24
- 309 00be F90B sbc r31,r25
- 310 00c0 F987 std Y+9,r31
- 311 00c2 E887 std Y+8,r30
- 312 00c4 D701 movw r26,r14
- 313 00c6 1F96 adiw r26,15
- 314 00c8 6D91 ld r22,X+
- 315 00ca 7C91 ld r23,X
- 316 00cc 5097 sbiw r26,15+1
- 317 00ce 492D mov r20,r9
- 318 00d0 512F mov r21,r17
- 319 00d2 C501 movw r24,r10
- 320 00d4 0E94 0000 call memcpy
- 321 00d8 C701 movw r24,r14
- 322 00da 0E94 0000 call NutNetBufFree
- 323 00de 892D mov r24,r9
- 324 00e0 912F mov r25,r17
- 325 00e2 00C0 rjmp .L21
- 326 .L25:
- 327 00e4 80E0 ldi r24,0
- 328 00e6 90E0 ldi r25,0
- 329 .L21:
- 330 /* epilogue start */
- 331 00e8 DF91 pop r29
- 332 00ea CF91 pop r28
- 333 00ec 1F91 pop r17
- 334 00ee 0F91 pop r16
- 335 00f0 FF90 pop r15
- 336 00f2 EF90 pop r14
- 337 00f4 DF90 pop r13
- 338 00f6 CF90 pop r12
- 339 00f8 BF90 pop r11
- 340 00fa AF90 pop r10
- 341 00fc 9F90 pop r9
- 342 00fe 8F90 pop r8
- GAS LISTING /tmp/cckAKpPV.s page 7
- 343 0100 7F90 pop r7
- 344 0102 6F90 pop r6
- 345 0104 5F90 pop r5
- 346 0106 4F90 pop r4
- 347 0108 0895 ret
- 348 .size NutUdpReceiveFrom, .-NutUdpReceiveFrom
- 349 .section .text.NutUdpDestroySocket,"ax",@progbits
- 350 .global NutUdpDestroySocket
- 351 .type NutUdpDestroySocket, @function
- 352 NutUdpDestroySocket:
- 353 0000 CF93 push r28
- 354 0002 DF93 push r29
- 355 /* prologue: function */
- 356 /* frame size = 0 */
- 357 /* stack size = 2 */
- 358 .L__stack_usage = 2
- 359 0004 EC01 movw r28,r24
- 360 0006 E091 0000 lds r30,udpSocketList
- 361 000a F091 0000 lds r31,udpSocketList+1
- 362 000e A0E0 ldi r26,lo8(udpSocketList)
- 363 0010 B0E0 ldi r27,hi8(udpSocketList)
- 364 .L27:
- 365 0012 3097 sbiw r30,0
- 366 0014 01F0 breq .L33
- 367 0016 EC17 cp r30,r28
- 368 0018 FD07 cpc r31,r29
- 369 001a 01F4 brne .L28
- 370 001c 8881 ld r24,Y
- 371 001e 9981 ldd r25,Y+1
- 372 0020 8D93 st X+,r24
- 373 0022 9C93 st X,r25
- 374 .L29:
- 375 0024 8C81 ldd r24,Y+4
- 376 0026 9D81 ldd r25,Y+5
- 377 0028 0097 sbiw r24,0
- 378 002a 01F0 breq .L34
- 379 002c FC01 movw r30,r24
- 380 002e 2081 ld r18,Z
- 381 0030 3181 ldd r19,Z+1
- 382 0032 3D83 std Y+5,r19
- 383 0034 2C83 std Y+4,r18
- 384 0036 0E94 0000 call NutNetBufFree
- 385 003a 00C0 rjmp .L29
- 386 .L34:
- 387 003c CE01 movw r24,r28
- 388 003e 0E94 0000 call free
- 389 0042 80E0 ldi r24,0
- 390 0044 90E0 ldi r25,0
- 391 0046 00C0 rjmp .L31
- 392 .L28:
- 393 0048 DF01 movw r26,r30
- 394 004a 0190 ld __tmp_reg__,Z+
- 395 004c F081 ld r31,Z
- 396 004e E02D mov r30,__tmp_reg__
- 397 0050 00C0 rjmp .L27
- 398 .L33:
- 399 0052 8FEF ldi r24,lo8(-1)
- GAS LISTING /tmp/cckAKpPV.s page 8
- 400 0054 9FEF ldi r25,lo8(-1)
- 401 .L31:
- 402 /* epilogue start */
- 403 0056 DF91 pop r29
- 404 0058 CF91 pop r28
- 405 005a 0895 ret
- 406 .size NutUdpDestroySocket, .-NutUdpDestroySocket
- 407 .section .text.NutUdpError,"ax",@progbits
- 408 .global NutUdpError
- 409 .type NutUdpError, @function
- 410 NutUdpError:
- 411 0000 CF93 push r28
- 412 0002 DF93 push r29
- 413 /* prologue: function */
- 414 /* frame size = 0 */
- 415 /* stack size = 2 */
- 416 .L__stack_usage = 2
- 417 0004 FC01 movw r30,r24
- 418 0006 892B or r24,r25
- 419 0008 01F0 breq .L37
- 420 000a 2485 ldd r18,Z+12
- 421 000c 3585 ldd r19,Z+13
- 422 000e 2115 cp r18,__zero_reg__
- 423 0010 3105 cpc r19,__zero_reg__
- 424 0012 01F0 breq .L38
- 425 0014 8289 ldd r24,Z+18
- 426 0016 9389 ldd r25,Z+19
- 427 /* #APP */
- 428 ; 309 "../../nut/include/sys/types.h" 1
- 429 0018 082E mov __tmp_reg__, r24
- 430 001a 892F mov r24, r25
- 431 001c 902D mov r25, __tmp_reg__
- 432
- 433 ; 0 "" 2
- 434 /* #NOAPP */
- 435 001e DA01 movw r26,r20
- 436 0020 8D93 st X+,r24
- 437 0022 9C93 st X,r25
- 438 0024 8685 ldd r24,Z+14
- 439 0026 9785 ldd r25,Z+15
- 440 0028 A089 ldd r26,Z+16
- 441 002a B189 ldd r27,Z+17
- 442 002c EB01 movw r28,r22
- 443 002e 8883 st Y,r24
- 444 0030 9983 std Y+1,r25
- 445 0032 AA83 std Y+2,r26
- 446 0034 BB83 std Y+3,r27
- 447 0036 1586 std Z+13,__zero_reg__
- 448 0038 1486 std Z+12,__zero_reg__
- 449 003a 138A std Z+19,__zero_reg__
- 450 003c 128A std Z+18,__zero_reg__
- 451 003e 1686 std Z+14,__zero_reg__
- 452 0040 1786 std Z+15,__zero_reg__
- 453 0042 108A std Z+16,__zero_reg__
- 454 0044 118A std Z+17,__zero_reg__
- 455 0046 C901 movw r24,r18
- 456 0048 00C0 rjmp .L36
- GAS LISTING /tmp/cckAKpPV.s page 9
- 457 .L37:
- 458 004a 86E2 ldi r24,lo8(38)
- 459 004c 00C0 rjmp .L39
- 460 .L38:
- 461 004e 80E0 ldi r24,0
- 462 .L39:
- 463 0050 90E0 ldi r25,0
- 464 .L36:
- 465 /* epilogue start */
- 466 0052 DF91 pop r29
- 467 0054 CF91 pop r28
- 468 0056 0895 ret
- 469 .size NutUdpError, .-NutUdpError
- 470 .section .text.NutUdpFindSocket,"ax",@progbits
- 471 .global NutUdpFindSocket
- 472 .type NutUdpFindSocket, @function
- 473 NutUdpFindSocket:
- 474 /* prologue: function */
- 475 /* frame size = 0 */
- 476 /* stack size = 0 */
- 477 .L__stack_usage = 0
- 478 0000 E091 0000 lds r30,udpSocketList
- 479 0004 F091 0000 lds r31,udpSocketList+1
- 480 .L41:
- 481 0008 3097 sbiw r30,0
- 482 000a 01F0 breq .L42
- 483 000c 2281 ldd r18,Z+2
- 484 000e 3381 ldd r19,Z+3
- 485 0010 2817 cp r18,r24
- 486 0012 3907 cpc r19,r25
- 487 0014 01F0 breq .L42
- 488 0016 0190 ld __tmp_reg__,Z+
- 489 0018 F081 ld r31,Z
- 490 001a E02D mov r30,__tmp_reg__
- 491 001c 00C0 rjmp .L41
- 492 .L42:
- 493 001e CF01 movw r24,r30
- 494 0020 0895 ret
- 495 .size NutUdpFindSocket, .-NutUdpFindSocket
- 496 .section .text.NutUdpSetSockOpt,"ax",@progbits
- 497 .global NutUdpSetSockOpt
- 498 .type NutUdpSetSockOpt, @function
- 499 NutUdpSetSockOpt:
- 500 /* prologue: function */
- 501 /* frame size = 0 */
- 502 /* stack size = 0 */
- 503 .L__stack_usage = 0
- 504 0000 0097 sbiw r24,0
- 505 0002 01F0 breq .L50
- 506 0004 6230 cpi r22,2
- 507 0006 7041 sbci r23,16
- 508 0008 01F4 brne .L50
- 509 000a 4115 cp r20,__zero_reg__
- 510 000c 5105 cpc r21,__zero_reg__
- 511 000e 01F0 breq .L50
- 512 0010 2230 cpi r18,2
- 513 0012 3105 cpc r19,__zero_reg__
- GAS LISTING /tmp/cckAKpPV.s page 10
- 514 0014 01F4 brne .L50
- 515 0016 FA01 movw r30,r20
- 516 0018 2081 ld r18,Z
- 517 001a 3181 ldd r19,Z+1
- 518 001c FC01 movw r30,r24
- 519 001e 3387 std Z+11,r19
- 520 0020 2287 std Z+10,r18
- 521 0022 80E0 ldi r24,0
- 522 0024 90E0 ldi r25,0
- 523 0026 0895 ret
- 524 .L50:
- 525 0028 8FEF ldi r24,lo8(-1)
- 526 002a 9FEF ldi r25,lo8(-1)
- 527 002c 0895 ret
- 528 .size NutUdpSetSockOpt, .-NutUdpSetSockOpt
- 529 .section .text.NutUdpGetSockOpt,"ax",@progbits
- 530 .global NutUdpGetSockOpt
- 531 .type NutUdpGetSockOpt, @function
- 532 NutUdpGetSockOpt:
- 533 /* prologue: function */
- 534 /* frame size = 0 */
- 535 /* stack size = 0 */
- 536 .L__stack_usage = 0
- 537 0000 0097 sbiw r24,0
- 538 0002 01F0 breq .L58
- 539 0004 6230 cpi r22,2
- 540 0006 7041 sbci r23,16
- 541 0008 01F4 brne .L58
- 542 000a 4115 cp r20,__zero_reg__
- 543 000c 5105 cpc r21,__zero_reg__
- 544 000e 01F0 breq .L58
- 545 0010 2230 cpi r18,2
- 546 0012 3105 cpc r19,__zero_reg__
- 547 0014 01F4 brne .L58
- 548 0016 FC01 movw r30,r24
- 549 0018 8285 ldd r24,Z+10
- 550 001a 9385 ldd r25,Z+11
- 551 001c FA01 movw r30,r20
- 552 001e 9183 std Z+1,r25
- 553 0020 8083 st Z,r24
- 554 0022 80E0 ldi r24,0
- 555 0024 90E0 ldi r25,0
- 556 0026 0895 ret
- 557 .L58:
- 558 0028 8FEF ldi r24,lo8(-1)
- 559 002a 9FEF ldi r25,lo8(-1)
- 560 002c 0895 ret
- 561 .size NutUdpGetSockOpt, .-NutUdpGetSockOpt
- 562 .section .text.NutUdpSetSocketError,"ax",@progbits
- 563 .global NutUdpSetSocketError
- 564 .type NutUdpSetSocketError, @function
- 565 NutUdpSetSocketError:
- 566 0000 0F93 push r16
- 567 0002 1F93 push r17
- 568 /* prologue: function */
- 569 /* frame size = 0 */
- 570 /* stack size = 2 */
- GAS LISTING /tmp/cckAKpPV.s page 11
- 571 .L__stack_usage = 2
- 572 0004 FC01 movw r30,r24
- 573 0006 892B or r24,r25
- 574 0008 01F0 breq .L62
- 575 000a 4687 std Z+14,r20
- 576 000c 5787 std Z+15,r21
- 577 000e 608B std Z+16,r22
- 578 0010 718B std Z+17,r23
- 579 0012 338B std Z+19,r19
- 580 0014 228B std Z+18,r18
- 581 0016 1587 std Z+13,r17
- 582 0018 0487 std Z+12,r16
- 583 001a 8681 ldd r24,Z+6
- 584 001c 9781 ldd r25,Z+7
- 585 001e 892B or r24,r25
- 586 0020 01F0 breq .L63
- 587 0022 CF01 movw r24,r30
- 588 0024 0696 adiw r24,6
- 589 0026 0E94 0000 call NutEventPost
- 590 002a 00C0 rjmp .L63
- 591 .L62:
- 592 002c 8FEF ldi r24,lo8(-1)
- 593 002e 9FEF ldi r25,lo8(-1)
- 594 0030 00C0 rjmp .L61
- 595 .L63:
- 596 0032 80E0 ldi r24,0
- 597 0034 90E0 ldi r25,0
- 598 .L61:
- 599 /* epilogue start */
- 600 0036 1F91 pop r17
- 601 0038 0F91 pop r16
- 602 003a 0895 ret
- 603 .size NutUdpSetSocketError, .-NutUdpSetSocketError
- 604 .local registered
- 605 .comm registered,1,1
- 606 .local last_local_port
- 607 .comm last_local_port,2,1
- 608 .comm udpSocketList,2,1
- 609 .ident "GCC: (GNU) 5.3.0"
- 610 .global __do_clear_bss
- GAS LISTING /tmp/cckAKpPV.s page 12
- DEFINED SYMBOLS
- *ABS*:0000000000000000 udpsock.c
- /tmp/cckAKpPV.s:2 *ABS*:000000000000003e __SP_H__
- /tmp/cckAKpPV.s:3 *ABS*:000000000000003d __SP_L__
- /tmp/cckAKpPV.s:4 *ABS*:000000000000003f __SREG__
- /tmp/cckAKpPV.s:5 *ABS*:000000000000003b __RAMPZ__
- /tmp/cckAKpPV.s:6 *ABS*:0000000000000000 __tmp_reg__
- /tmp/cckAKpPV.s:7 *ABS*:0000000000000001 __zero_reg__
- /tmp/cckAKpPV.s:11 .text.NutUdpCreateSocket:0000000000000000 NutUdpCreateSocket
- .bss:0000000000000000 registered
- /tmp/cckAKpPV.s:605 .bss:0000000000000001 last_local_port
- *COM*:0000000000000002 udpSocketList
- /tmp/cckAKpPV.s:116 .text.NutUdpSendTo:0000000000000000 NutUdpSendTo
- /tmp/cckAKpPV.s:201 .text.NutUdpReceiveFrom:0000000000000000 NutUdpReceiveFrom
- /tmp/cckAKpPV.s:352 .text.NutUdpDestroySocket:0000000000000000 NutUdpDestroySocket
- /tmp/cckAKpPV.s:410 .text.NutUdpError:0000000000000000 NutUdpError
- /tmp/cckAKpPV.s:473 .text.NutUdpFindSocket:0000000000000000 NutUdpFindSocket
- /tmp/cckAKpPV.s:499 .text.NutUdpSetSockOpt:0000000000000000 NutUdpSetSockOpt
- /tmp/cckAKpPV.s:532 .text.NutUdpGetSockOpt:0000000000000000 NutUdpGetSockOpt
- /tmp/cckAKpPV.s:565 .text.NutUdpSetSocketError:0000000000000000 NutUdpSetSocketError
- UNDEFINED SYMBOLS
- NutUdpInput
- NutRegisterIpHandler
- NutGetMillis
- calloc
- NutNetBufAlloc
- memcpy
- NutUdpOutput
- NutNetBufFree
- NutEventWait
- free
- NutEventPost
- __do_clear_bss
|