| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710 |
- GAS LISTING /tmp/ccGR6dde.s page 1
- 1 .file "tcpout.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.__byte_swap4,"ax",@progbits
- 9 .type __byte_swap4, @function
- 10 __byte_swap4:
- 11 /* prologue: function */
- 12 /* frame size = 0 */
- 13 /* stack size = 0 */
- 14 .L__stack_usage = 0
- 15 /* #APP */
- 16 ; 319 "../../nut/include/sys/types.h" 1
- 17 0000 062E mov __tmp_reg__, r22
- 18 0002 692F mov r22, r25
- 19 0004 902D mov r25, __tmp_reg__
- 20 0006 072E mov __tmp_reg__, r23
- 21 0008 782F mov r23, r24
- 22 000a 802D mov r24, __tmp_reg__
- 23
- 24 ; 0 "" 2
- 25 /* #NOAPP */
- 26 000c 0895 ret
- 27 .size __byte_swap4, .-__byte_swap4
- 28 .section .text.NutTcpOutput,"ax",@progbits
- 29 .global NutTcpOutput
- 30 .type NutTcpOutput, @function
- 31 NutTcpOutput:
- 32 0000 6F92 push r6
- 33 0002 7F92 push r7
- 34 0004 8F92 push r8
- 35 0006 9F92 push r9
- 36 0008 AF92 push r10
- 37 000a BF92 push r11
- 38 000c CF92 push r12
- 39 000e DF92 push r13
- 40 0010 EF92 push r14
- 41 0012 FF92 push r15
- 42 0014 0F93 push r16
- 43 0016 1F93 push r17
- 44 0018 CF93 push r28
- 45 001a DF93 push r29
- 46 001c 1F92 push __zero_reg__
- 47 001e 1F92 push __zero_reg__
- 48 0020 CDB7 in r28,__SP_L__
- 49 0022 DEB7 in r29,__SP_H__
- 50 /* prologue: function */
- 51 /* frame size = 2 */
- 52 /* stack size = 16 */
- 53 .L__stack_usage = 16
- 54 0024 6C01 movw r12,r24
- 55 0026 7B01 movw r14,r22
- 56 0028 3A01 movw r6,r20
- 57 002a DC01 movw r26,r24
- GAS LISTING /tmp/ccGR6dde.s page 2
- 58 002c 9296 adiw r26,34
- 59 002e 8C91 ld r24,X
- 60 0030 452B or r20,r21
- 61 0032 01F4 brne .L3
- 62 0034 982F mov r25,r24
- 63 0036 9B70 andi r25,lo8(11)
- 64 0038 01F4 brne .+2
- 65 003a 00C0 rjmp .L21
- 66 .L3:
- 67 003c 81FF sbrs r24,1
- 68 003e 00C0 rjmp .L22
- 69 0040 18E1 ldi r17,lo8(24)
- 70 0042 00C0 rjmp .L5
- 71 .L22:
- 72 0044 14E1 ldi r17,lo8(20)
- 73 .L5:
- 74 0046 412F mov r20,r17
- 75 0048 50E0 ldi r21,0
- 76 004a 60E4 ldi r22,lo8(64)
- 77 004c 80E0 ldi r24,0
- 78 004e 90E0 ldi r25,0
- 79 0050 0E94 0000 call NutNetBufAlloc
- 80 0054 4C01 movw r8,r24
- 81 0056 0097 sbiw r24,0
- 82 0058 01F4 brne .L6
- 83 .L12:
- 84 005a F601 movw r30,r12
- 85 005c E959 subi r30,-103
- 86 005e FF4F sbci r31,-1
- 87 0060 87E3 ldi r24,lo8(55)
- 88 0062 90E0 ldi r25,0
- 89 0064 9183 std Z+1,r25
- 90 0066 8083 st Z,r24
- 91 0068 00C0 rjmp .L24
- 92 .L6:
- 93 006a FC01 movw r30,r24
- 94 006c A384 ldd r10,Z+11
- 95 006e B484 ldd r11,Z+12
- 96 0070 D601 movw r26,r12
- 97 0072 5A96 adiw r26,26
- 98 0074 8D91 ld r24,X+
- 99 0076 9C91 ld r25,X
- 100 0078 5B97 sbiw r26,26+1
- 101 007a F501 movw r30,r10
- 102 007c 9183 std Z+1,r25
- 103 007e 8083 st Z,r24
- 104 0080 9096 adiw r26,32
- 105 0082 8D91 ld r24,X+
- 106 0084 9C91 ld r25,X
- 107 0086 9197 sbiw r26,32+1
- 108 0088 9383 std Z+3,r25
- 109 008a 8283 std Z+2,r24
- 110 008c 110F lsl r17
- 111 008e 110F lsl r17
- 112 0090 1487 std Z+12,r17
- 113 0092 9296 adiw r26,34
- 114 0094 8C91 ld r24,X
- GAS LISTING /tmp/ccGR6dde.s page 3
- 115 0096 9297 sbiw r26,34
- 116 0098 877F andi r24,lo8(-9)
- 117 009a 9296 adiw r26,34
- 118 009c 8C93 st X,r24
- 119 009e 9297 sbiw r26,34
- 120 00a0 9B96 adiw r26,43
- 121 00a2 6D91 ld r22,X+
- 122 00a4 7D91 ld r23,X+
- 123 00a6 8D91 ld r24,X+
- 124 00a8 9C91 ld r25,X
- 125 00aa 9E97 sbiw r26,43+3
- 126 00ac 0E94 0000 call __byte_swap4
- 127 00b0 D501 movw r26,r10
- 128 00b2 1496 adiw r26,4
- 129 00b4 6D93 st X+,r22
- 130 00b6 7D93 st X+,r23
- 131 00b8 8D93 st X+,r24
- 132 00ba 9C93 st X,r25
- 133 00bc 1797 sbiw r26,4+3
- 134 00be F601 movw r30,r12
- 135 00c0 82A1 ldd r24,Z+34
- 136 00c2 84FF sbrs r24,4
- 137 00c4 00C0 rjmp .L7
- 138 00c6 80E1 ldi r24,lo8(16)
- 139 00c8 1D96 adiw r26,13
- 140 00ca 8C93 st X,r24
- 141 00cc 82A1 ldd r24,Z+34
- 142 00ce 8F7E andi r24,lo8(-17)
- 143 00d0 82A3 std Z+34,r24
- 144 00d2 EC5B subi r30,-68
- 145 00d4 FF4F sbci r31,-1
- 146 00d6 6081 ld r22,Z
- 147 00d8 7181 ldd r23,Z+1
- 148 00da 8281 ldd r24,Z+2
- 149 00dc 9381 ldd r25,Z+3
- 150 00de 0E94 0000 call __byte_swap4
- 151 00e2 D501 movw r26,r10
- 152 00e4 1896 adiw r26,8
- 153 00e6 6D93 st X+,r22
- 154 00e8 7D93 st X+,r23
- 155 00ea 8D93 st X+,r24
- 156 00ec 9C93 st X,r25
- 157 00ee 1B97 sbiw r26,8+3
- 158 00f0 00C0 rjmp .L8
- 159 .L7:
- 160 00f2 F501 movw r30,r10
- 161 00f4 1586 std Z+13,__zero_reg__
- 162 00f6 1086 std Z+8,__zero_reg__
- 163 00f8 1186 std Z+9,__zero_reg__
- 164 00fa 1286 std Z+10,__zero_reg__
- 165 00fc 1386 std Z+11,__zero_reg__
- 166 .L8:
- 167 00fe F601 movw r30,r12
- 168 0100 82A1 ldd r24,Z+34
- 169 0102 81FF sbrs r24,1
- 170 0104 00C0 rjmp .L9
- 171 0106 E75A subi r30,-89
- GAS LISTING /tmp/ccGR6dde.s page 4
- 172 0108 FF4F sbci r31,-1
- 173 010a 8081 ld r24,Z
- 174 010c 9181 ldd r25,Z+1
- 175 /* #APP */
- 176 ; 309 "../../nut/include/sys/types.h" 1
- 177 010e 082E mov __tmp_reg__, r24
- 178 0110 892F mov r24, r25
- 179 0112 902D mov r25, __tmp_reg__
- 180
- 181 ; 0 "" 2
- 182 /* #NOAPP */
- 183 0114 9A83 std Y+2,r25
- 184 0116 8983 std Y+1,r24
- 185 0118 D501 movw r26,r10
- 186 011a 1D96 adiw r26,13
- 187 011c 9C91 ld r25,X
- 188 011e 1D97 sbiw r26,13
- 189 0120 9260 ori r25,lo8(2)
- 190 0122 1D96 adiw r26,13
- 191 0124 9C93 st X,r25
- 192 0126 F601 movw r30,r12
- 193 0128 92A1 ldd r25,Z+34
- 194 012a 9D7F andi r25,lo8(-3)
- 195 012c 92A3 std Z+34,r25
- 196 012e 43A5 ldd r20,Z+43
- 197 0130 54A5 ldd r21,Z+44
- 198 0132 65A5 ldd r22,Z+45
- 199 0134 76A5 ldd r23,Z+46
- 200 0136 4F5F subi r20,-1
- 201 0138 5F4F sbci r21,-1
- 202 013a 6F4F sbci r22,-1
- 203 013c 7F4F sbci r23,-1
- 204 013e 43A7 std Z+43,r20
- 205 0140 54A7 std Z+44,r21
- 206 0142 65A7 std Z+45,r22
- 207 0144 76A7 std Z+46,r23
- 208 0146 92E0 ldi r25,lo8(2)
- 209 0148 F501 movw r30,r10
- 210 014a 948B std Z+20,r25
- 211 014c 94E0 ldi r25,lo8(4)
- 212 014e 958B std Z+21,r25
- 213 0150 868B std Z+22,r24
- 214 0152 8A81 ldd r24,Y+2
- 215 0154 878B std Z+23,r24
- 216 0156 00C0 rjmp .L10
- 217 .L9:
- 218 0158 6114 cp r6,__zero_reg__
- 219 015a 7104 cpc r7,__zero_reg__
- 220 015c 01F0 breq .L11
- 221 015e A301 movw r20,r6
- 222 0160 60E8 ldi r22,lo8(-128)
- 223 0162 C401 movw r24,r8
- 224 0164 0E94 0000 call NutNetBufAlloc
- 225 0168 4C01 movw r8,r24
- 226 016a 0097 sbiw r24,0
- 227 016c 01F4 brne .+2
- 228 016e 00C0 rjmp .L12
- GAS LISTING /tmp/ccGR6dde.s page 5
- 229 0170 A301 movw r20,r6
- 230 0172 B701 movw r22,r14
- 231 0174 DC01 movw r26,r24
- 232 0176 1F96 adiw r26,15
- 233 0178 8D91 ld r24,X+
- 234 017a 9C91 ld r25,X
- 235 017c 5097 sbiw r26,15+1
- 236 017e 0E94 0000 call memcpy
- 237 0182 F601 movw r30,r12
- 238 0184 83A5 ldd r24,Z+43
- 239 0186 94A5 ldd r25,Z+44
- 240 0188 A5A5 ldd r26,Z+45
- 241 018a B6A5 ldd r27,Z+46
- 242 018c 860D add r24,r6
- 243 018e 971D adc r25,r7
- 244 0190 A11D adc r26,__zero_reg__
- 245 0192 B11D adc r27,__zero_reg__
- 246 0194 83A7 std Z+43,r24
- 247 0196 94A7 std Z+44,r25
- 248 0198 A5A7 std Z+45,r26
- 249 019a B6A7 std Z+46,r27
- 250 019c D501 movw r26,r10
- 251 019e 1D96 adiw r26,13
- 252 01a0 8C91 ld r24,X
- 253 01a2 1D97 sbiw r26,13
- 254 01a4 8860 ori r24,lo8(8)
- 255 01a6 1D96 adiw r26,13
- 256 01a8 8C93 st X,r24
- 257 01aa 00C0 rjmp .L10
- 258 .L11:
- 259 01ac 80FF sbrs r24,0
- 260 01ae 00C0 rjmp .L10
- 261 01b0 F501 movw r30,r10
- 262 01b2 8585 ldd r24,Z+13
- 263 01b4 8160 ori r24,lo8(1)
- 264 01b6 8587 std Z+13,r24
- 265 01b8 D601 movw r26,r12
- 266 01ba 9296 adiw r26,34
- 267 01bc 8C91 ld r24,X
- 268 01be 9297 sbiw r26,34
- 269 01c0 8E7F andi r24,lo8(-2)
- 270 01c2 9296 adiw r26,34
- 271 01c4 8C93 st X,r24
- 272 01c6 9297 sbiw r26,34
- 273 01c8 9B96 adiw r26,43
- 274 01ca 8D91 ld r24,X+
- 275 01cc 9D91 ld r25,X+
- 276 01ce 0D90 ld __tmp_reg__,X+
- 277 01d0 BC91 ld r27,X
- 278 01d2 A02D mov r26,__tmp_reg__
- 279 01d4 0196 adiw r24,1
- 280 01d6 A11D adc r26,__zero_reg__
- 281 01d8 B11D adc r27,__zero_reg__
- 282 01da F601 movw r30,r12
- 283 01dc 83A7 std Z+43,r24
- 284 01de 94A7 std Z+44,r25
- 285 01e0 A5A7 std Z+45,r26
- GAS LISTING /tmp/ccGR6dde.s page 6
- 286 01e2 B6A7 std Z+46,r27
- 287 .L10:
- 288 01e4 F601 movw r30,r12
- 289 01e6 E85B subi r30,-72
- 290 01e8 FF4F sbci r31,-1
- 291 01ea 8081 ld r24,Z
- 292 01ec 9181 ldd r25,Z+1
- 293 01ee 7196 adiw r30,17
- 294 01f0 2081 ld r18,Z
- 295 01f2 3181 ldd r19,Z+1
- 296 01f4 8217 cp r24,r18
- 297 01f6 9307 cpc r25,r19
- 298 01f8 00F4 brsh .L13
- 299 01fa D501 movw r26,r10
- 300 01fc 1F96 adiw r26,14+1
- 301 01fe 1C92 st X,__zero_reg__
- 302 0200 1E92 st -X,__zero_reg__
- 303 0202 1E97 sbiw r26,14
- 304 0204 00C0 rjmp .L14
- 305 .L13:
- 306 /* #APP */
- 307 ; 309 "../../nut/include/sys/types.h" 1
- 308 0206 082E mov __tmp_reg__, r24
- 309 0208 892F mov r24, r25
- 310 020a 902D mov r25, __tmp_reg__
- 311
- 312 ; 0 "" 2
- 313 /* #NOAPP */
- 314 020c F501 movw r30,r10
- 315 020e 9787 std Z+15,r25
- 316 0210 8687 std Z+14,r24
- 317 .L14:
- 318 0212 D501 movw r26,r10
- 319 0214 5196 adiw r26,16+1
- 320 0216 1C92 st X,__zero_reg__
- 321 0218 1E92 st -X,__zero_reg__
- 322 021a 5097 sbiw r26,16
- 323 021c 5396 adiw r26,18+1
- 324 021e 1C92 st X,__zero_reg__
- 325 0220 1E92 st -X,__zero_reg__
- 326 0222 5297 sbiw r26,18
- 327 0224 F401 movw r30,r8
- 328 0226 E584 ldd r14,Z+13
- 329 0228 F684 ldd r15,Z+14
- 330 022a 8189 ldd r24,Z+17
- 331 022c 9289 ldd r25,Z+18
- 332 022e E80E add r14,r24
- 333 0230 F91E adc r15,r25
- 334 /* #APP */
- 335 ; 309 "../../nut/include/sys/types.h" 1
- 336 0232 0E2C mov __tmp_reg__, r14
- 337 0234 EF2C mov r14, r15
- 338 0236 F02C mov r15, __tmp_reg__
- 339
- 340 ; 0 "" 2
- 341 /* #NOAPP */
- 342 0238 D601 movw r26,r12
- GAS LISTING /tmp/ccGR6dde.s page 7
- 343 023a 5C96 adiw r26,28
- 344 023c 2D91 ld r18,X+
- 345 023e 3D91 ld r19,X+
- 346 0240 4D91 ld r20,X+
- 347 0242 5C91 ld r21,X
- 348 0244 5F97 sbiw r26,28+3
- 349 0246 5696 adiw r26,22
- 350 0248 6D91 ld r22,X+
- 351 024a 7D91 ld r23,X+
- 352 024c 8D91 ld r24,X+
- 353 024e 9C91 ld r25,X
- 354 0250 5997 sbiw r26,22+3
- 355 0252 06E0 ldi r16,lo8(6)
- 356 0254 0E94 0000 call NutIpPseudoChkSumPartial
- 357 0258 DC01 movw r26,r24
- 358 025a CB01 movw r24,r22
- 359 025c F401 movw r30,r8
- 360 025e 4585 ldd r20,Z+13
- 361 0260 5685 ldd r21,Z+14
- 362 0262 B501 movw r22,r10
- 363 0264 0E94 0000 call NutIpChkSumPartial
- 364 0268 D401 movw r26,r8
- 365 026a 5196 adiw r26,17
- 366 026c 4D91 ld r20,X+
- 367 026e 5C91 ld r21,X
- 368 0270 5297 sbiw r26,17+1
- 369 0272 1F96 adiw r26,15
- 370 0274 6D91 ld r22,X+
- 371 0276 7C91 ld r23,X
- 372 0278 5097 sbiw r26,15+1
- 373 027a 0E94 0000 call NutIpChkSum
- 374 027e F501 movw r30,r10
- 375 0280 918B std Z+17,r25
- 376 0282 808B std Z+16,r24
- 377 0284 6728 or r6,r7
- 378 0286 01F4 brne .L15
- 379 0288 8585 ldd r24,Z+13
- 380 028a 8370 andi r24,lo8(3)
- 381 028c 01F4 brne .+2
- 382 028e 00C0 rjmp .L16
- 383 .L15:
- 384 0290 D401 movw r26,r8
- 385 0292 1D92 st X+,__zero_reg__
- 386 0294 1C92 st X,__zero_reg__
- 387 0296 D601 movw r26,r12
- 388 0298 DA96 adiw r26,58
- 389 029a ED91 ld r30,X+
- 390 029c FC91 ld r31,X
- 391 029e DB97 sbiw r26,58+1
- 392 02a0 3097 sbiw r30,0
- 393 02a2 01F4 brne .L33
- 394 02a4 DB96 adiw r26,58+1
- 395 02a6 9C92 st X,r9
- 396 02a8 8E92 st -X,r8
- 397 02aa DA97 sbiw r26,58
- 398 02ac 0E94 0000 call NutGetMillis
- 399 02b0 F601 movw r30,r12
- GAS LISTING /tmp/ccGR6dde.s page 8
- 400 02b2 EB59 subi r30,-101
- 401 02b4 FF4F sbci r31,-1
- 402 02b6 6160 ori r22,1
- 403 02b8 7183 std Z+1,r23
- 404 02ba 6083 st Z,r22
- 405 02bc 00C0 rjmp .L18
- 406 .L33:
- 407 02be 8081 ld r24,Z
- 408 02c0 9181 ldd r25,Z+1
- 409 02c2 0097 sbiw r24,0
- 410 02c4 01F0 breq .L39
- 411 02c6 FC01 movw r30,r24
- 412 02c8 00C0 rjmp .L33
- 413 .L39:
- 414 02ca 9182 std Z+1,r9
- 415 02cc 8082 st Z,r8
- 416 .L18:
- 417 02ce 8601 movw r16,r12
- 418 02d0 055A subi r16,-91
- 419 02d2 1F4F sbci r17,-1
- 420 02d4 F801 movw r30,r16
- 421 02d6 8081 ld r24,Z
- 422 02d8 9181 ldd r25,Z+1
- 423 02da A281 ldd r26,Z+2
- 424 02dc B381 ldd r27,Z+3
- 425 02de 892B or r24,r25
- 426 02e0 8A2B or r24,r26
- 427 02e2 8B2B or r24,r27
- 428 02e4 01F4 brne .L20
- 429 02e6 D501 movw r26,r10
- 430 02e8 1496 adiw r26,4
- 431 02ea 6D91 ld r22,X+
- 432 02ec 7D91 ld r23,X+
- 433 02ee 8D91 ld r24,X+
- 434 02f0 9C91 ld r25,X
- 435 02f2 1797 sbiw r26,4+3
- 436 02f4 0E94 0000 call __byte_swap4
- 437 02f8 F801 movw r30,r16
- 438 02fa 6083 st Z,r22
- 439 02fc 7183 std Z+1,r23
- 440 02fe 8283 std Z+2,r24
- 441 0300 9383 std Z+3,r25
- 442 .L20:
- 443 0302 60E0 ldi r22,0
- 444 0304 C401 movw r24,r8
- 445 0306 0E94 0000 call NutNetBufClonePart
- 446 030a 4C01 movw r8,r24
- 447 030c 892B or r24,r25
- 448 030e 01F4 brne .+2
- 449 0310 00C0 rjmp .L12
- 450 .L16:
- 451 0312 D601 movw r26,r12
- 452 0314 5C96 adiw r26,28
- 453 0316 4D91 ld r20,X+
- 454 0318 5D91 ld r21,X+
- 455 031a 6D91 ld r22,X+
- 456 031c 7C91 ld r23,X
- GAS LISTING /tmp/ccGR6dde.s page 9
- 457 031e 5F97 sbiw r26,28+3
- 458 0320 9401 movw r18,r8
- 459 0322 86E0 ldi r24,lo8(6)
- 460 0324 0E94 0000 call NutIpOutput
- 461 0328 8C01 movw r16,r24
- 462 032a 892B or r24,r25
- 463 032c 01F4 brne .L24
- 464 032e C401 movw r24,r8
- 465 0330 0E94 0000 call NutNetBufFree
- 466 0334 00C0 rjmp .L4
- 467 .L21:
- 468 0336 00E0 ldi r16,0
- 469 0338 10E0 ldi r17,0
- 470 033a 00C0 rjmp .L4
- 471 .L24:
- 472 033c 0FEF ldi r16,lo8(-1)
- 473 033e 1FEF ldi r17,lo8(-1)
- 474 .L4:
- 475 0340 C801 movw r24,r16
- 476 /* epilogue start */
- 477 0342 0F90 pop __tmp_reg__
- 478 0344 0F90 pop __tmp_reg__
- 479 0346 DF91 pop r29
- 480 0348 CF91 pop r28
- 481 034a 1F91 pop r17
- 482 034c 0F91 pop r16
- 483 034e FF90 pop r15
- 484 0350 EF90 pop r14
- 485 0352 DF90 pop r13
- 486 0354 CF90 pop r12
- 487 0356 BF90 pop r11
- 488 0358 AF90 pop r10
- 489 035a 9F90 pop r9
- 490 035c 8F90 pop r8
- 491 035e 7F90 pop r7
- 492 0360 6F90 pop r6
- 493 0362 0895 ret
- 494 .size NutTcpOutput, .-NutTcpOutput
- 495 .section .text.NutTcpReject,"ax",@progbits
- 496 .global NutTcpReject
- 497 .type NutTcpReject, @function
- 498 NutTcpReject:
- 499 0000 AF92 push r10
- 500 0002 BF92 push r11
- 501 0004 CF92 push r12
- 502 0006 DF92 push r13
- 503 0008 EF92 push r14
- 504 000a FF92 push r15
- 505 000c 0F93 push r16
- 506 000e CF93 push r28
- 507 0010 DF93 push r29
- 508 /* prologue: function */
- 509 /* frame size = 0 */
- 510 /* stack size = 9 */
- 511 .L__stack_usage = 9
- 512 0012 6C01 movw r12,r24
- 513 0014 FC01 movw r30,r24
- GAS LISTING /tmp/ccGR6dde.s page 10
- 514 0016 C385 ldd r28,Z+11
- 515 0018 D485 ldd r29,Z+12
- 516 001a 8D85 ldd r24,Y+13
- 517 001c 82FF sbrs r24,2
- 518 001e 00C0 rjmp .L41
- 519 .L47:
- 520 0020 C601 movw r24,r12
- 521 0022 0E94 0000 call NutNetBufFree
- 522 0026 00C0 rjmp .L42
- 523 .L41:
- 524 0028 F601 movw r30,r12
- 525 002a A780 ldd r10,Z+7
- 526 002c B084 ldd r11,Z+8
- 527 002e 128A std Z+18,__zero_reg__
- 528 0030 118A std Z+17,__zero_reg__
- 529 0032 84E1 ldi r24,lo8(20)
- 530 0034 90E0 ldi r25,0
- 531 0036 9687 std Z+14,r25
- 532 0038 8587 std Z+13,r24
- 533 003a 8881 ld r24,Y
- 534 003c 9981 ldd r25,Y+1
- 535 003e 2A81 ldd r18,Y+2
- 536 0040 3B81 ldd r19,Y+3
- 537 0042 3983 std Y+1,r19
- 538 0044 2883 st Y,r18
- 539 0046 9B83 std Y+3,r25
- 540 0048 8A83 std Y+2,r24
- 541 004a 2D85 ldd r18,Y+13
- 542 004c 24FF sbrs r18,4
- 543 004e 00C0 rjmp .L43
- 544 0050 84E0 ldi r24,lo8(4)
- 545 0052 8D87 std Y+13,r24
- 546 0054 8885 ldd r24,Y+8
- 547 0056 9985 ldd r25,Y+9
- 548 0058 AA85 ldd r26,Y+10
- 549 005a BB85 ldd r27,Y+11
- 550 005c 8C83 std Y+4,r24
- 551 005e 9D83 std Y+5,r25
- 552 0060 AE83 std Y+6,r26
- 553 0062 BF83 std Y+7,r27
- 554 0064 1886 std Y+8,__zero_reg__
- 555 0066 1986 std Y+9,__zero_reg__
- 556 0068 1A86 std Y+10,__zero_reg__
- 557 006a 1B86 std Y+11,__zero_reg__
- 558 006c 00C0 rjmp .L44
- 559 .L43:
- 560 006e 6C81 ldd r22,Y+4
- 561 0070 7D81 ldd r23,Y+5
- 562 0072 8E81 ldd r24,Y+6
- 563 0074 9F81 ldd r25,Y+7
- 564 0076 21FF sbrs r18,1
- 565 0078 00C0 rjmp .L45
- 566 007a 0E94 0000 call __byte_swap4
- 567 007e 6F5F subi r22,-1
- 568 0080 7F4F sbci r23,-1
- 569 0082 8F4F sbci r24,-1
- 570 0084 9F4F sbci r25,-1
- GAS LISTING /tmp/ccGR6dde.s page 11
- 571 0086 0E94 0000 call __byte_swap4
- 572 .L45:
- 573 008a 6887 std Y+8,r22
- 574 008c 7987 std Y+9,r23
- 575 008e 8A87 std Y+10,r24
- 576 0090 9B87 std Y+11,r25
- 577 0092 1C82 std Y+4,__zero_reg__
- 578 0094 1D82 std Y+5,__zero_reg__
- 579 0096 1E82 std Y+6,__zero_reg__
- 580 0098 1F82 std Y+7,__zero_reg__
- 581 009a 84E1 ldi r24,lo8(20)
- 582 009c 8D87 std Y+13,r24
- 583 .L44:
- 584 009e 80E5 ldi r24,lo8(80)
- 585 00a0 8C87 std Y+12,r24
- 586 00a2 1F86 std Y+15,__zero_reg__
- 587 00a4 1E86 std Y+14,__zero_reg__
- 588 00a6 1B8A std Y+19,__zero_reg__
- 589 00a8 1A8A std Y+18,__zero_reg__
- 590 00aa 198A std Y+17,__zero_reg__
- 591 00ac 188A std Y+16,__zero_reg__
- 592 00ae F601 movw r30,r12
- 593 00b0 E584 ldd r14,Z+13
- 594 00b2 F684 ldd r15,Z+14
- 595 /* #APP */
- 596 ; 309 "../../nut/include/sys/types.h" 1
- 597 00b4 0E2C mov __tmp_reg__, r14
- 598 00b6 EF2C mov r14, r15
- 599 00b8 F02C mov r15, __tmp_reg__
- 600
- 601 ; 0 "" 2
- 602 /* #NOAPP */
- 603 00ba F501 movw r30,r10
- 604 00bc 2485 ldd r18,Z+12
- 605 00be 3585 ldd r19,Z+13
- 606 00c0 4685 ldd r20,Z+14
- 607 00c2 5785 ldd r21,Z+15
- 608 00c4 6089 ldd r22,Z+16
- 609 00c6 7189 ldd r23,Z+17
- 610 00c8 8289 ldd r24,Z+18
- 611 00ca 9389 ldd r25,Z+19
- 612 00cc 06E0 ldi r16,lo8(6)
- 613 00ce 0E94 0000 call NutIpPseudoChkSumPartial
- 614 00d2 DC01 movw r26,r24
- 615 00d4 CB01 movw r24,r22
- 616 00d6 F601 movw r30,r12
- 617 00d8 4585 ldd r20,Z+13
- 618 00da 5685 ldd r21,Z+14
- 619 00dc BE01 movw r22,r28
- 620 00de 0E94 0000 call NutIpChkSum
- 621 00e2 998B std Y+17,r25
- 622 00e4 888B std Y+16,r24
- 623 00e6 F501 movw r30,r10
- 624 00e8 4485 ldd r20,Z+12
- 625 00ea 5585 ldd r21,Z+13
- 626 00ec 6685 ldd r22,Z+14
- 627 00ee 7785 ldd r23,Z+15
- GAS LISTING /tmp/ccGR6dde.s page 12
- 628 00f0 9601 movw r18,r12
- 629 00f2 86E0 ldi r24,lo8(6)
- 630 00f4 0E94 0000 call NutIpOutput
- 631 00f8 892B or r24,r25
- 632 00fa 01F4 brne .+2
- 633 00fc 00C0 rjmp .L47
- 634 .L42:
- 635 00fe 80E0 ldi r24,0
- 636 0100 90E0 ldi r25,0
- 637 /* epilogue start */
- 638 0102 DF91 pop r29
- 639 0104 CF91 pop r28
- 640 0106 0F91 pop r16
- 641 0108 FF90 pop r15
- 642 010a EF90 pop r14
- 643 010c DF90 pop r13
- 644 010e CF90 pop r12
- 645 0110 BF90 pop r11
- 646 0112 AF90 pop r10
- 647 0114 0895 ret
- 648 .size NutTcpReject, .-NutTcpReject
- 649 .ident "GCC: (GNU) 5.3.0"
- GAS LISTING /tmp/ccGR6dde.s page 13
- DEFINED SYMBOLS
- *ABS*:0000000000000000 tcpout.c
- /tmp/ccGR6dde.s:2 *ABS*:000000000000003e __SP_H__
- /tmp/ccGR6dde.s:3 *ABS*:000000000000003d __SP_L__
- /tmp/ccGR6dde.s:4 *ABS*:000000000000003f __SREG__
- /tmp/ccGR6dde.s:5 *ABS*:000000000000003b __RAMPZ__
- /tmp/ccGR6dde.s:6 *ABS*:0000000000000000 __tmp_reg__
- /tmp/ccGR6dde.s:7 *ABS*:0000000000000001 __zero_reg__
- /tmp/ccGR6dde.s:10 .text.__byte_swap4:0000000000000000 __byte_swap4
- /tmp/ccGR6dde.s:31 .text.NutTcpOutput:0000000000000000 NutTcpOutput
- /tmp/ccGR6dde.s:498 .text.NutTcpReject:0000000000000000 NutTcpReject
- UNDEFINED SYMBOLS
- NutNetBufAlloc
- memcpy
- NutIpPseudoChkSumPartial
- NutIpChkSumPartial
- NutIpChkSum
- NutGetMillis
- NutNetBufClonePart
- NutIpOutput
- NutNetBufFree
|