GAS LISTING /tmp/ccHbHl28.s page 1 1 .file "ipcpin.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.IpcpValidateIpReq,"ax",@progbits 9 .type IpcpValidateIpReq, @function 10 IpcpValidateIpReq: 11 0000 0F93 push r16 12 0002 1F93 push r17 13 /* prologue: function */ 14 /* frame size = 0 */ 15 /* stack size = 2 */ 16 .L__stack_usage = 2 17 0004 FB01 movw r30,r22 18 0006 DC01 movw r26,r24 19 0008 4D91 ld r20,X+ 20 000a 5D91 ld r21,X+ 21 000c 6D91 ld r22,X+ 22 000e 7C91 ld r23,X 23 0010 0081 ld r16,Z 24 0012 1181 ldd r17,Z+1 25 0014 2281 ldd r18,Z+2 26 0016 3381 ldd r19,Z+3 27 0018 4115 cp r20,__zero_reg__ 28 001a 5105 cpc r21,__zero_reg__ 29 001c 6105 cpc r22,__zero_reg__ 30 001e 7105 cpc r23,__zero_reg__ 31 0020 01F4 brne .L2 32 0022 0115 cp r16,__zero_reg__ 33 0024 1105 cpc r17,__zero_reg__ 34 0026 2105 cpc r18,__zero_reg__ 35 0028 3105 cpc r19,__zero_reg__ 36 002a 01F0 breq .L2 37 002c FC01 movw r30,r24 38 002e 0083 st Z,r16 39 0030 1183 std Z+1,r17 40 0032 2283 std Z+2,r18 41 0034 3383 std Z+3,r19 42 0036 00C0 rjmp .L4 43 .L2: 44 0038 4017 cp r20,r16 45 003a 5107 cpc r21,r17 46 003c 6207 cpc r22,r18 47 003e 7307 cpc r23,r19 48 0040 01F0 breq .L4 49 0042 4083 st Z,r20 50 0044 5183 std Z+1,r21 51 0046 6283 std Z+2,r22 52 0048 7383 std Z+3,r23 53 004a 86E0 ldi r24,lo8(6) 54 004c 90E0 ldi r25,0 55 004e 00C0 rjmp .L3 56 .L4: 57 0050 80E0 ldi r24,0 GAS LISTING /tmp/ccHbHl28.s page 2 58 0052 90E0 ldi r25,0 59 .L3: 60 /* epilogue start */ 61 0054 1F91 pop r17 62 0056 0F91 pop r16 63 0058 0895 ret 64 .size IpcpValidateIpReq, .-IpcpValidateIpReq 65 .section .text.IpcpRxConfNakRej,"ax",@progbits 66 .type IpcpRxConfNakRej, @function 67 IpcpRxConfNakRej: 68 0000 AF92 push r10 69 0002 BF92 push r11 70 0004 CF92 push r12 71 0006 DF92 push r13 72 0008 EF92 push r14 73 000a FF92 push r15 74 000c 0F93 push r16 75 000e 1F93 push r17 76 0010 CF93 push r28 77 0012 DF93 push r29 78 0014 1F92 push __zero_reg__ 79 0016 CDB7 in r28,__SP_L__ 80 0018 DEB7 in r29,__SP_H__ 81 /* prologue: function */ 82 /* frame size = 1 */ 83 /* stack size = 11 */ 84 .L__stack_usage = 11 85 001a 8C01 movw r16,r24 86 001c CA01 movw r24,r20 87 001e D801 movw r26,r16 88 0020 5196 adiw r26,17 89 0022 AD90 ld r10,X+ 90 0024 BC90 ld r11,X 91 0026 5297 sbiw r26,17+1 92 0028 F501 movw r30,r10 93 002a 4381 ldd r20,Z+3 94 002c 4613 cpse r20,r22 95 002e 00C0 rjmp .L12 96 0030 3581 ldd r19,Z+5 97 0032 3111 cpse r19,__zero_reg__ 98 0034 00C0 rjmp .L12 99 0036 34AD ldd r19,Z+60 100 0038 3230 cpi r19,lo8(2) 101 003a 00F0 brlo .L12 102 003c 3430 cpi r19,lo8(4) 103 003e 00F0 brlo .L13 104 0040 3650 subi r19,lo8(-(-6)) 105 0042 3430 cpi r19,lo8(4) 106 0044 00F0 brlo .L43 107 0046 00C0 rjmp .L12 108 .L13: 109 0048 4983 std Y+1,r20 110 004a 0E94 0000 call NutNetBufFree 111 004e 20E0 ldi r18,0 112 0050 30E0 ldi r19,0 113 0052 4981 ldd r20,Y+1 114 0054 66E0 ldi r22,lo8(6) GAS LISTING /tmp/ccHbHl28.s page 3 115 0056 C801 movw r24,r16 116 /* epilogue start */ 117 0058 0F90 pop __tmp_reg__ 118 005a DF91 pop r29 119 005c CF91 pop r28 120 005e 1F91 pop r17 121 0060 0F91 pop r16 122 0062 FF90 pop r15 123 0064 EF90 pop r14 124 0066 DF90 pop r13 125 0068 CF90 pop r12 126 006a BF90 pop r11 127 006c AF90 pop r10 128 006e 0C94 0000 jmp NutIpcpOutput 129 .L12: 130 /* epilogue start */ 131 0072 0F90 pop __tmp_reg__ 132 0074 DF91 pop r29 133 0076 CF91 pop r28 134 0078 1F91 pop r17 135 007a 0F91 pop r16 136 007c FF90 pop r15 137 007e EF90 pop r14 138 0080 DF90 pop r13 139 0082 CF90 pop r12 140 0084 BF90 pop r11 141 0086 AF90 pop r10 142 0088 0C94 0000 jmp NutNetBufFree 143 .L43: 144 008c 31E0 ldi r19,lo8(1) 145 008e F501 movw r30,r10 146 0090 3583 std Z+5,r19 147 0092 DC01 movw r26,r24 148 0094 1F96 adiw r26,15 149 0096 ED91 ld r30,X+ 150 0098 FC91 ld r31,X 151 009a 5097 sbiw r26,15+1 152 009c 5196 adiw r26,17 153 009e 6D91 ld r22,X+ 154 00a0 7C91 ld r23,X 155 00a2 5297 sbiw r26,17+1 156 .L15: 157 00a4 6230 cpi r22,2 158 00a6 7105 cpc r23,__zero_reg__ 159 00a8 00F4 brsh .+2 160 00aa 00C0 rjmp .L46 161 00ac 3081 ld r19,Z 162 00ae 3138 cpi r19,lo8(-127) 163 00b0 01F0 breq .L17 164 00b2 3338 cpi r19,lo8(-125) 165 00b4 01F0 breq .L18 166 00b6 3330 cpi r19,lo8(3) 167 00b8 01F0 breq .+2 168 00ba 00C0 rjmp .L16 169 00bc C280 ldd r12,Z+2 170 00be D380 ldd r13,Z+3 171 00c0 E480 ldd r14,Z+4 GAS LISTING /tmp/ccHbHl28.s page 4 172 00c2 F580 ldd r15,Z+5 173 00c4 C114 cp r12,__zero_reg__ 174 00c6 D104 cpc r13,__zero_reg__ 175 00c8 E104 cpc r14,__zero_reg__ 176 00ca F104 cpc r15,__zero_reg__ 177 00cc 01F4 brne .+2 178 00ce 00C0 rjmp .L16 179 00d0 D501 movw r26,r10 180 00d2 9196 adiw r26,33 181 00d4 CD92 st X+,r12 182 00d6 DD92 st X+,r13 183 00d8 ED92 st X+,r14 184 00da FC92 st X,r15 185 00dc 9497 sbiw r26,33+3 186 00de 00C0 rjmp .L16 187 .L17: 188 00e0 2223 tst r18 189 00e2 01F0 breq .L20 190 00e4 D501 movw r26,r10 191 00e6 D596 adiw r26,53 192 00e8 CD90 ld r12,X+ 193 00ea DD90 ld r13,X+ 194 00ec ED90 ld r14,X+ 195 00ee FC90 ld r15,X 196 00f0 D897 sbiw r26,53+3 197 00f2 6894 set 198 00f4 D0F8 bld r13,0 199 00f6 00C0 rjmp .L44 200 .L20: 201 00f8 C280 ldd r12,Z+2 202 00fa D380 ldd r13,Z+3 203 00fc E480 ldd r14,Z+4 204 00fe F580 ldd r15,Z+5 205 0100 C114 cp r12,__zero_reg__ 206 0102 D104 cpc r13,__zero_reg__ 207 0104 E104 cpc r14,__zero_reg__ 208 0106 F104 cpc r15,__zero_reg__ 209 0108 01F0 breq .L16 210 010a D501 movw r26,r10 211 010c 9D96 adiw r26,45 212 010e CD92 st X+,r12 213 0110 DD92 st X+,r13 214 0112 ED92 st X+,r14 215 0114 FC92 st X,r15 216 0116 D097 sbiw r26,45+3 217 0118 00C0 rjmp .L16 218 .L18: 219 011a 2223 tst r18 220 011c 01F0 breq .L21 221 011e D501 movw r26,r10 222 0120 D596 adiw r26,53 223 0122 CD90 ld r12,X+ 224 0124 DD90 ld r13,X+ 225 0126 ED90 ld r14,X+ 226 0128 FC90 ld r15,X 227 012a D897 sbiw r26,53+3 228 012c 6894 set GAS LISTING /tmp/ccHbHl28.s page 5 229 012e D1F8 bld r13,1 230 .L44: 231 0130 D596 adiw r26,53 232 0132 CD92 st X+,r12 233 0134 DD92 st X+,r13 234 0136 ED92 st X+,r14 235 0138 FC92 st X,r15 236 013a D897 sbiw r26,53+3 237 013c 00C0 rjmp .L16 238 .L21: 239 013e C280 ldd r12,Z+2 240 0140 D380 ldd r13,Z+3 241 0142 E480 ldd r14,Z+4 242 0144 F580 ldd r15,Z+5 243 0146 C114 cp r12,__zero_reg__ 244 0148 D104 cpc r13,__zero_reg__ 245 014a E104 cpc r14,__zero_reg__ 246 014c F104 cpc r15,__zero_reg__ 247 014e 01F0 breq .L16 248 0150 D501 movw r26,r10 249 0152 D196 adiw r26,49 250 0154 CD92 st X+,r12 251 0156 DD92 st X+,r13 252 0158 ED92 st X+,r14 253 015a FC92 st X,r15 254 015c D497 sbiw r26,49+3 255 .L16: 256 015e 4181 ldd r20,Z+1 257 0160 50E0 ldi r21,0 258 0162 641B sub r22,r20 259 0164 750B sbc r23,r21 260 0166 E40F add r30,r20 261 0168 F51F adc r31,r21 262 016a 00C0 rjmp .L15 263 .L46: 264 016c 0E94 0000 call NutNetBufFree 265 0170 F501 movw r30,r10 266 0172 84AD ldd r24,Z+60 267 0174 8730 cpi r24,lo8(7) 268 0176 01F0 breq .L45 269 0178 00F4 brsh .L25 270 017a 8630 cpi r24,lo8(6) 271 017c 01F0 breq .L26 272 017e 00C0 rjmp .L9 273 .L25: 274 0180 8830 cpi r24,lo8(8) 275 0182 01F0 breq .L26 276 0184 8930 cpi r24,lo8(9) 277 0186 01F4 brne .L9 278 0188 C801 movw r24,r16 279 018a 0E94 0000 call IpcpLowerDown 280 018e 00C0 rjmp .L45 281 .L26: 282 0190 D501 movw r26,r10 283 0192 1396 adiw r26,3 284 0194 6C91 ld r22,X 285 0196 1397 sbiw r26,3 GAS LISTING /tmp/ccHbHl28.s page 6 286 0198 6F5F subi r22,lo8(-(1)) 287 019a 1396 adiw r26,3 288 019c 6C93 st X,r22 289 019e C801 movw r24,r16 290 /* epilogue start */ 291 01a0 0F90 pop __tmp_reg__ 292 01a2 DF91 pop r29 293 01a4 CF91 pop r28 294 01a6 1F91 pop r17 295 01a8 0F91 pop r16 296 01aa FF90 pop r15 297 01ac EF90 pop r14 298 01ae DF90 pop r13 299 01b0 CF90 pop r12 300 01b2 BF90 pop r11 301 01b4 AF90 pop r10 302 01b6 0C94 0000 jmp IpcpTxConfReq 303 .L45: 304 01ba F501 movw r30,r10 305 01bc 6381 ldd r22,Z+3 306 01be 6F5F subi r22,lo8(-(1)) 307 01c0 6383 std Z+3,r22 308 01c2 C801 movw r24,r16 309 01c4 0E94 0000 call IpcpTxConfReq 310 01c8 86E0 ldi r24,lo8(6) 311 01ca D501 movw r26,r10 312 01cc DC96 adiw r26,60 313 01ce 8C93 st X,r24 314 .L9: 315 /* epilogue start */ 316 01d0 0F90 pop __tmp_reg__ 317 01d2 DF91 pop r29 318 01d4 CF91 pop r28 319 01d6 1F91 pop r17 320 01d8 0F91 pop r16 321 01da FF90 pop r15 322 01dc EF90 pop r14 323 01de DF90 pop r13 324 01e0 CF90 pop r12 325 01e2 BF90 pop r11 326 01e4 AF90 pop r10 327 01e6 0895 ret 328 .size IpcpRxConfNakRej, .-IpcpRxConfNakRej 329 .section .text.IpcpRxProtRej,"ax",@progbits 330 .global IpcpRxProtRej 331 .type IpcpRxProtRej, @function 332 IpcpRxProtRej: 333 0000 0F93 push r16 334 0002 1F93 push r17 335 0004 CF93 push r28 336 0006 DF93 push r29 337 /* prologue: function */ 338 /* frame size = 0 */ 339 /* stack size = 4 */ 340 .L__stack_usage = 4 341 0008 8C01 movw r16,r24 342 000a FC01 movw r30,r24 GAS LISTING /tmp/ccHbHl28.s page 7 343 000c C189 ldd r28,Z+17 344 000e D289 ldd r29,Z+18 345 0010 8CAD ldd r24,Y+60 346 0012 8430 cpi r24,lo8(4) 347 0014 01F0 breq .L49 348 0016 00F4 brsh .L50 349 0018 8230 cpi r24,lo8(2) 350 001a 01F0 breq .L49 351 001c 8330 cpi r24,lo8(3) 352 001e 01F0 breq .L51 353 0020 00C0 rjmp .L47 354 .L50: 355 0022 8930 cpi r24,lo8(9) 356 0024 00F0 brlo .L51 357 0026 8930 cpi r24,lo8(9) 358 0028 01F4 brne .L47 359 002a C801 movw r24,r16 360 002c 0E94 0000 call IpcpLowerDown 361 0030 20E0 ldi r18,0 362 0032 30E0 ldi r19,0 363 0034 4B81 ldd r20,Y+3 364 0036 65E0 ldi r22,lo8(5) 365 0038 C801 movw r24,r16 366 003a 0E94 0000 call NutIpcpOutput 367 003e 85E0 ldi r24,lo8(5) 368 0040 00C0 rjmp .L62 369 .L49: 370 0042 82E0 ldi r24,lo8(2) 371 0044 00C0 rjmp .L62 372 .L51: 373 0046 83E0 ldi r24,lo8(3) 374 .L62: 375 0048 8CAF std Y+60,r24 376 .L47: 377 /* epilogue start */ 378 004a DF91 pop r29 379 004c CF91 pop r28 380 004e 1F91 pop r17 381 0050 0F91 pop r16 382 0052 0895 ret 383 .size IpcpRxProtRej, .-IpcpRxProtRej 384 .section .text.NutIpcpInput,"ax",@progbits 385 .global NutIpcpInput 386 .type NutIpcpInput, @function 387 NutIpcpInput: 388 0000 2F92 push r2 389 0002 3F92 push r3 390 0004 4F92 push r4 391 0006 5F92 push r5 392 0008 6F92 push r6 393 000a 7F92 push r7 394 000c 8F92 push r8 395 000e 9F92 push r9 396 0010 AF92 push r10 397 0012 BF92 push r11 398 0014 CF92 push r12 399 0016 DF92 push r13 GAS LISTING /tmp/ccHbHl28.s page 8 400 0018 EF92 push r14 401 001a FF92 push r15 402 001c 0F93 push r16 403 001e 1F93 push r17 404 0020 CF93 push r28 405 0022 DF93 push r29 406 0024 CDB7 in r28,__SP_L__ 407 0026 DEB7 in r29,__SP_H__ 408 0028 2A97 sbiw r28,10 409 002a 0FB6 in __tmp_reg__,__SREG__ 410 002c F894 cli 411 002e DEBF out __SP_H__,r29 412 0030 0FBE out __SREG__,__tmp_reg__ 413 0032 CDBF out __SP_L__,r28 414 /* prologue: function */ 415 /* frame size = 10 */ 416 /* stack size = 28 */ 417 .L__stack_usage = 28 418 0034 6C01 movw r12,r24 419 0036 7B01 movw r14,r22 420 0038 DB01 movw r26,r22 421 003a 1996 adiw r26,9 422 003c 4D91 ld r20,X+ 423 003e 5C91 ld r21,X 424 0040 1A97 sbiw r26,9+1 425 0042 4430 cpi r20,4 426 0044 5105 cpc r21,__zero_reg__ 427 0046 00F4 brsh .+2 428 0048 00C0 rjmp .L67 429 004a FB01 movw r30,r22 430 004c A781 ldd r26,Z+7 431 004e B085 ldd r27,Z+8 432 0050 1296 adiw r26,2 433 0052 8D91 ld r24,X+ 434 0054 9C91 ld r25,X 435 0056 1397 sbiw r26,2+1 436 0058 9C01 movw r18,r24 437 /* #APP */ 438 ; 309 "../../nut/include/sys/types.h" 1 439 005a 022E mov __tmp_reg__, r18 440 005c 232F mov r18, r19 441 005e 302D mov r19, __tmp_reg__ 442 443 ; 0 "" 2 444 /* #NOAPP */ 445 0060 2430 cpi r18,4 446 0062 3105 cpc r19,__zero_reg__ 447 0064 00F4 brsh .+2 448 0066 00C0 rjmp .L67 449 0068 4217 cp r20,r18 450 006a 5307 cpc r21,r19 451 006c 00F4 brsh .+2 452 006e 00C0 rjmp .L67 453 0070 F601 movw r30,r12 454 0072 0189 ldd r16,Z+17 455 0074 1289 ldd r17,Z+18 456 0076 F801 movw r30,r16 GAS LISTING /tmp/ccHbHl28.s page 9 457 0078 24AD ldd r18,Z+60 458 007a 2230 cpi r18,lo8(2) 459 007c 00F4 brsh .+2 460 007e 00C0 rjmp .L67 461 0080 9D01 movw r18,r26 462 0082 2C5F subi r18,-4 463 0084 3F4F sbci r19,-1 464 0086 FB01 movw r30,r22 465 0088 308B std Z+16,r19 466 008a 2787 std Z+15,r18 467 /* #APP */ 468 ; 309 "../../nut/include/sys/types.h" 1 469 008c 082E mov __tmp_reg__, r24 470 008e 892F mov r24, r25 471 0090 902D mov r25, __tmp_reg__ 472 473 ; 0 "" 2 474 /* #NOAPP */ 475 0092 0497 sbiw r24,4 476 0094 928B std Z+18,r25 477 0096 818B std Z+17,r24 478 0098 EC91 ld r30,X 479 009a 4E2F mov r20,r30 480 009c 50E0 ldi r21,0 481 009e FA01 movw r30,r20 482 00a0 3197 sbiw r30,1 483 00a2 E730 cpi r30,7 484 00a4 F105 cpc r31,__zero_reg__ 485 00a6 00F0 brlo .+2 486 00a8 00C0 rjmp .L67 487 00aa 8827 clr r24 488 00ac E050 subi r30,pm_lo8(-(.L69)) 489 00ae F040 sbci r31,pm_hi8(-(.L69)) 490 00b0 8040 sbci r24,pm_hh8(-(.L69)) 491 00b2 0C94 0000 jmp __tablejump2__ 492 .section .progmem.gcc_sw_table.NutIpcpInput,"a",@progbits 493 .p2align 1 494 .L69: 495 0000 0000 .word gs(.L68) 496 0002 0000 .word gs(.L70) 497 0004 0000 .word gs(.L71) 498 0006 0000 .word gs(.L72) 499 0008 0000 .word gs(.L73) 500 000a 0000 .word gs(.L74) 501 000c 0000 .word gs(.L75) 502 .section .text.NutIpcpInput 503 .L68: 504 00b6 1196 adiw r26,1 505 00b8 4C91 ld r20,X 506 00ba 4D83 std Y+5,r20 507 00bc D801 movw r26,r16 508 00be DC96 adiw r26,60 509 00c0 8C91 ld r24,X 510 00c2 8630 cpi r24,lo8(6) 511 00c4 00F4 brsh .L77 512 00c6 8430 cpi r24,lo8(4) 513 00c8 00F0 brlo .+2 GAS LISTING /tmp/ccHbHl28.s page 10 514 00ca 00C0 rjmp .L67 515 00cc 8230 cpi r24,lo8(2) 516 00ce 01F0 breq .L79 517 00d0 8330 cpi r24,lo8(3) 518 00d2 01F4 brne .L76 519 00d4 D801 movw r26,r16 520 00d6 1396 adiw r26,3 521 00d8 6C91 ld r22,X 522 00da 1397 sbiw r26,3 523 00dc 6F5F subi r22,lo8(-(1)) 524 00de 1396 adiw r26,3 525 00e0 6C93 st X,r22 526 00e2 C601 movw r24,r12 527 00e4 0E94 0000 call IpcpTxConfReq 528 00e8 86E0 ldi r24,lo8(6) 529 00ea F801 movw r30,r16 530 00ec 84AF std Z+60,r24 531 00ee 00C0 rjmp .L76 532 .L77: 533 00f0 8930 cpi r24,lo8(9) 534 00f2 01F4 brne .L76 535 00f4 C601 movw r24,r12 536 00f6 0E94 0000 call IpcpLowerDown 537 00fa F801 movw r30,r16 538 00fc 6381 ldd r22,Z+3 539 00fe 6F5F subi r22,lo8(-(1)) 540 0100 6383 std Z+3,r22 541 0102 C601 movw r24,r12 542 0104 0E94 0000 call IpcpTxConfReq 543 0108 00C0 rjmp .L76 544 .L79: 545 010a CB01 movw r24,r22 546 010c 0E94 0000 call NutNetBufFree 547 0110 20E0 ldi r18,0 548 0112 30E0 ldi r19,0 549 0114 4D81 ldd r20,Y+5 550 0116 00C0 rjmp .L169 551 .L76: 552 0118 D701 movw r26,r14 553 011a 1F96 adiw r26,15 554 011c ED91 ld r30,X+ 555 011e FC91 ld r31,X 556 0120 5097 sbiw r26,15+1 557 0122 5196 adiw r26,17 558 0124 2D91 ld r18,X+ 559 0126 3C91 ld r19,X 560 0128 5297 sbiw r26,17+1 561 012a 1F01 movw r2,r30 562 012c A12C mov r10,__zero_reg__ 563 012e B12C mov r11,__zero_reg__ 564 .L83: 565 0130 2230 cpi r18,2 566 0132 3105 cpc r19,__zero_reg__ 567 0134 00F4 brsh .+2 568 0136 00C0 rjmp .L174 569 0138 5181 ldd r21,Z+1 570 013a 852F mov r24,r21 GAS LISTING /tmp/ccHbHl28.s page 11 571 013c 90E0 ldi r25,0 572 013e 2817 cp r18,r24 573 0140 3907 cpc r19,r25 574 0142 00F0 brlo .L132 575 0144 4081 ld r20,Z 576 0146 4138 cpi r20,lo8(-127) 577 0148 01F0 breq .L86 578 014a 4338 cpi r20,lo8(-125) 579 014c 01F0 breq .L87 580 014e 4330 cpi r20,lo8(3) 581 0150 01F4 brne .L85 582 0152 00C0 rjmp .L88 583 .L86: 584 0154 4280 ldd r4,Z+2 585 0156 5380 ldd r5,Z+3 586 0158 6480 ldd r6,Z+4 587 015a 7580 ldd r7,Z+5 588 015c 4528 or r4,r5 589 015e 4628 or r4,r6 590 0160 4728 or r4,r7 591 0162 01F4 brne .L87 592 0164 D801 movw r26,r16 593 0166 9D96 adiw r26,45 594 0168 4D90 ld r4,X+ 595 016a 5D90 ld r5,X+ 596 016c 6D90 ld r6,X+ 597 016e 7C90 ld r7,X 598 0170 D097 sbiw r26,45+3 599 0172 4528 or r4,r5 600 0174 4628 or r4,r6 601 0176 4728 or r4,r7 602 0178 01F0 breq .L85 603 .L87: 604 017a 4280 ldd r4,Z+2 605 017c 5380 ldd r5,Z+3 606 017e 6480 ldd r6,Z+4 607 0180 7580 ldd r7,Z+5 608 0182 4528 or r4,r5 609 0184 4628 or r4,r6 610 0186 4728 or r4,r7 611 0188 01F4 brne .L88 612 018a D801 movw r26,r16 613 018c D196 adiw r26,49 614 018e 4D90 ld r4,X+ 615 0190 5D90 ld r5,X+ 616 0192 6D90 ld r6,X+ 617 0194 7C90 ld r7,X 618 0196 D497 sbiw r26,49+3 619 0198 4528 or r4,r5 620 019a 4628 or r4,r6 621 019c 4728 or r4,r7 622 019e 01F0 breq .L85 623 .L88: 624 01a0 5630 cpi r21,lo8(6) 625 01a2 01F0 breq .L89 626 .L85: 627 01a4 0097 sbiw r24,0 GAS LISTING /tmp/ccHbHl28.s page 12 628 01a6 01F0 breq .L89 629 01a8 00C0 rjmp .L84 630 .L132: 631 01aa C901 movw r24,r18 632 .L84: 633 01ac E215 cp r30,r2 634 01ae F305 cpc r31,r3 635 01b0 01F4 brne .L90 636 .L93: 637 01b2 280E add r2,r24 638 01b4 391E adc r3,r25 639 01b6 A80E add r10,r24 640 01b8 B91E adc r11,r25 641 01ba 00C0 rjmp .L89 642 .L90: 643 01bc 4081 ld r20,Z 644 01be D101 movw r26,r2 645 01c0 4C93 st X,r20 646 01c2 1196 adiw r26,1 647 01c4 8C93 st X,r24 648 01c6 712C mov r7,__zero_reg__ 649 01c8 4C01 movw r8,r24 650 01ca B2E0 ldi r27,2 651 01cc 8B1A sub r8,r27 652 01ce 9108 sbc r9,__zero_reg__ 653 .L91: 654 01d0 672D mov r22,r7 655 01d2 70E0 ldi r23,0 656 01d4 6815 cp r22,r8 657 01d6 7905 cpc r23,r9 658 01d8 00F4 brsh .L93 659 01da AF01 movw r20,r30 660 01dc 460F add r20,r22 661 01de 571F adc r21,r23 662 01e0 DA01 movw r26,r20 663 01e2 1296 adiw r26,2 664 01e4 4C91 ld r20,X 665 01e6 620D add r22,r2 666 01e8 731D adc r23,r3 667 01ea DB01 movw r26,r22 668 01ec 1296 adiw r26,2 669 01ee 4C93 st X,r20 670 01f0 7394 inc r7 671 01f2 00C0 rjmp .L91 672 .L89: 673 01f4 8181 ldd r24,Z+1 674 01f6 90E0 ldi r25,0 675 01f8 281B sub r18,r24 676 01fa 390B sbc r19,r25 677 01fc E80F add r30,r24 678 01fe F91F adc r31,r25 679 0200 00C0 rjmp .L83 680 .L174: 681 0202 A114 cp r10,__zero_reg__ 682 0204 B104 cpc r11,__zero_reg__ 683 0206 01F0 breq .L95 684 0208 F701 movw r30,r14 GAS LISTING /tmp/ccHbHl28.s page 13 685 020a B28A std Z+18,r11 686 020c A18A std Z+17,r10 687 020e 24E0 ldi r18,lo8(4) 688 0210 A22E mov r10,r18 689 0212 B12C mov r11,__zero_reg__ 690 0214 00C0 rjmp .L96 691 .L95: 692 0216 D701 movw r26,r14 693 0218 1F96 adiw r26,15 694 021a 6D90 ld r6,X+ 695 021c 7C90 ld r7,X 696 021e 5097 sbiw r26,15+1 697 0220 5196 adiw r26,17 698 0222 4D90 ld r4,X+ 699 0224 5C90 ld r5,X 700 0226 5297 sbiw r26,17+1 701 0228 4301 movw r8,r6 702 022a F801 movw r30,r16 703 022c BD96 adiw r30,45 704 022e FF83 std Y+7,r31 705 0230 EE83 std Y+6,r30 706 0232 C801 movw r24,r16 707 0234 C196 adiw r24,49 708 0236 9987 std Y+9,r25 709 0238 8887 std Y+8,r24 710 023a 1801 movw r2,r16 711 023c 95E2 ldi r25,37 712 023e 290E add r2,r25 713 0240 311C adc r3,__zero_reg__ 714 .L97: 715 0242 F2E0 ldi r31,2 716 0244 4F16 cp r4,r31 717 0246 5104 cpc r5,__zero_reg__ 718 0248 00F4 brsh .+2 719 024a 00C0 rjmp .L175 720 024c F301 movw r30,r6 721 024e 8281 ldd r24,Z+2 722 0250 9381 ldd r25,Z+3 723 0252 A481 ldd r26,Z+4 724 0254 B581 ldd r27,Z+5 725 0256 8983 std Y+1,r24 726 0258 9A83 std Y+2,r25 727 025a AB83 std Y+3,r26 728 025c BC83 std Y+4,r27 729 025e 8081 ld r24,Z 730 0260 8138 cpi r24,lo8(-127) 731 0262 01F0 breq .L99 732 0264 8338 cpi r24,lo8(-125) 733 0266 01F0 breq .L100 734 0268 8330 cpi r24,lo8(3) 735 026a 01F4 brne .L98 736 026c BE01 movw r22,r28 737 026e 6F5F subi r22,-1 738 0270 7F4F sbci r23,-1 739 0272 C101 movw r24,r2 740 0274 00C0 rjmp .L168 741 .L99: GAS LISTING /tmp/ccHbHl28.s page 14 742 0276 BE01 movw r22,r28 743 0278 6F5F subi r22,-1 744 027a 7F4F sbci r23,-1 745 027c 8E81 ldd r24,Y+6 746 027e 9F81 ldd r25,Y+7 747 0280 00C0 rjmp .L168 748 .L100: 749 0282 BE01 movw r22,r28 750 0284 6F5F subi r22,-1 751 0286 7F4F sbci r23,-1 752 0288 8885 ldd r24,Y+8 753 028a 9985 ldd r25,Y+9 754 .L168: 755 028c 0E94 0000 call IpcpValidateIpReq 756 0290 0097 sbiw r24,0 757 0292 01F0 breq .L98 758 0294 6814 cp r6,r8 759 0296 7904 cpc r7,r9 760 0298 01F0 breq .L103 761 029a D301 movw r26,r6 762 029c 2C91 ld r18,X 763 029e F401 movw r30,r8 764 02a0 2083 st Z,r18 765 02a2 8183 std Z+1,r24 766 .L103: 767 02a4 4981 ldd r20,Y+1 768 02a6 5A81 ldd r21,Y+2 769 02a8 6B81 ldd r22,Y+3 770 02aa 7C81 ldd r23,Y+4 771 02ac D401 movw r26,r8 772 02ae 1296 adiw r26,2 773 02b0 4D93 st X+,r20 774 02b2 5D93 st X+,r21 775 02b4 6D93 st X+,r22 776 02b6 7C93 st X,r23 777 02b8 1597 sbiw r26,2+3 778 02ba 880E add r8,r24 779 02bc 991E adc r9,r25 780 02be A80E add r10,r24 781 02c0 B91E adc r11,r25 782 .L98: 783 02c2 F301 movw r30,r6 784 02c4 8181 ldd r24,Z+1 785 02c6 90E0 ldi r25,0 786 02c8 481A sub r4,r24 787 02ca 590A sbc r5,r25 788 02cc 680E add r6,r24 789 02ce 791E adc r7,r25 790 02d0 00C0 rjmp .L97 791 .L175: 792 02d2 A114 cp r10,__zero_reg__ 793 02d4 B104 cpc r11,__zero_reg__ 794 02d6 01F0 breq .L133 795 02d8 D701 movw r26,r14 796 02da 5296 adiw r26,17+1 797 02dc BC92 st X,r11 798 02de AE92 st -X,r10 GAS LISTING /tmp/ccHbHl28.s page 15 799 02e0 5197 sbiw r26,17 800 02e2 93E0 ldi r25,lo8(3) 801 02e4 A92E mov r10,r25 802 02e6 B12C mov r11,__zero_reg__ 803 02e8 00C0 rjmp .L96 804 .L133: 805 02ea 82E0 ldi r24,lo8(2) 806 02ec A82E mov r10,r24 807 02ee B12C mov r11,__zero_reg__ 808 .L96: 809 02f0 9701 movw r18,r14 810 02f2 4D81 ldd r20,Y+5 811 02f4 6A2D mov r22,r10 812 02f6 C601 movw r24,r12 813 02f8 0E94 0000 call NutIpcpOutput 814 02fc F801 movw r30,r16 815 02fe 84AD ldd r24,Z+60 816 0300 F2E0 ldi r31,2 817 0302 AF16 cp r10,r31 818 0304 B104 cpc r11,__zero_reg__ 819 0306 01F4 brne .L105 820 0308 8730 cpi r24,lo8(7) 821 030a 01F4 brne .L106 822 030c 89E0 ldi r24,lo8(9) 823 030e D801 movw r26,r16 824 0310 DC96 adiw r26,60 825 0312 8C93 st X,r24 826 0314 C801 movw r24,r16 827 0316 0E94 0000 call NutEventPost 828 031a 00C0 rjmp .L107 829 .L106: 830 031c 88E0 ldi r24,lo8(8) 831 031e F801 movw r30,r16 832 0320 84AF std Z+60,r24 833 .L107: 834 0322 D801 movw r26,r16 835 0324 DD96 adiw r26,61 836 0326 1C92 st X,__zero_reg__ 837 0328 00C0 rjmp .L63 838 .L105: 839 032a 8730 cpi r24,lo8(7) 840 032c 01F4 brne .+2 841 032e 00C0 rjmp .L63 842 0330 86E0 ldi r24,lo8(6) 843 0332 00C0 rjmp .L173 844 .L70: 845 0334 1196 adiw r26,1 846 0336 4C91 ld r20,X 847 0338 D801 movw r26,r16 848 033a 1396 adiw r26,3 849 033c 8C91 ld r24,X 850 033e 1397 sbiw r26,3 851 0340 4813 cpse r20,r24 852 0342 00C0 rjmp .L63 853 0344 1596 adiw r26,5 854 0346 8C91 ld r24,X 855 0348 1597 sbiw r26,5 GAS LISTING /tmp/ccHbHl28.s page 16 856 034a 8111 cpse r24,__zero_reg__ 857 034c 00C0 rjmp .L63 858 034e DC96 adiw r26,60 859 0350 8C91 ld r24,X 860 0352 8630 cpi r24,lo8(6) 861 0354 01F0 breq .L112 862 0356 00F4 brsh .L113 863 0358 8250 subi r24,lo8(-(-2)) 864 035a 8230 cpi r24,lo8(2) 865 035c 00F0 brlo .+2 866 035e 00C0 rjmp .L111 867 0360 CB01 movw r24,r22 868 0362 4A87 std Y+10,r20 869 0364 0E94 0000 call NutNetBufFree 870 0368 20E0 ldi r18,0 871 036a 30E0 ldi r19,0 872 036c 4A85 ldd r20,Y+10 873 036e 00C0 rjmp .L169 874 .L113: 875 0370 8830 cpi r24,lo8(8) 876 0372 01F0 breq .L115 877 0374 00F0 brlo .L116 878 0376 8930 cpi r24,lo8(9) 879 0378 01F4 brne .L111 880 037a C601 movw r24,r12 881 037c 0E94 0000 call IpcpLowerDown 882 0380 F801 movw r30,r16 883 0382 6381 ldd r22,Z+3 884 0384 6F5F subi r22,lo8(-(1)) 885 0386 6383 std Z+3,r22 886 0388 C601 movw r24,r12 887 038a 0E94 0000 call IpcpTxConfReq 888 038e 86E0 ldi r24,lo8(6) 889 0390 D801 movw r26,r16 890 0392 DC96 adiw r26,60 891 0394 8C93 st X,r24 892 0396 00C0 rjmp .L111 893 .L73: 894 0398 1196 adiw r26,1 895 039a BC90 ld r11,X 896 039c CB01 movw r24,r22 897 039e 0E94 0000 call NutNetBufFree 898 03a2 D801 movw r26,r16 899 03a4 DC96 adiw r26,60 900 03a6 8C91 ld r24,X 901 03a8 8730 cpi r24,lo8(7) 902 03aa 00F0 brlo .+2 903 03ac 00C0 rjmp .L176 904 .L124: 905 03ae 20E0 ldi r18,0 906 03b0 30E0 ldi r19,0 907 03b2 4B2D mov r20,r11 908 .L169: 909 03b4 66E0 ldi r22,lo8(6) 910 03b6 C601 movw r24,r12 911 03b8 0E94 0000 call NutIpcpOutput 912 03bc 00C0 rjmp .L63 GAS LISTING /tmp/ccHbHl28.s page 17 913 .L112: 914 03be 87E0 ldi r24,lo8(7) 915 03c0 F801 movw r30,r16 916 03c2 84AF std Z+60,r24 917 03c4 11AE std Z+57,__zero_reg__ 918 03c6 00C0 rjmp .L111 919 .L116: 920 03c8 61E0 ldi r22,lo8(1) 921 03ca 640F add r22,r20 922 03cc D801 movw r26,r16 923 03ce 1396 adiw r26,3 924 03d0 6C93 st X,r22 925 03d2 C601 movw r24,r12 926 03d4 0E94 0000 call IpcpTxConfReq 927 03d8 86E0 ldi r24,lo8(6) 928 03da F801 movw r30,r16 929 03dc 84AF std Z+60,r24 930 03de 00C0 rjmp .L111 931 .L115: 932 03e0 89E0 ldi r24,lo8(9) 933 03e2 D801 movw r26,r16 934 03e4 DC96 adiw r26,60 935 03e6 8C93 st X,r24 936 03e8 DC97 sbiw r26,60 937 03ea D996 adiw r26,57 938 03ec 1C92 st X,__zero_reg__ 939 03ee C801 movw r24,r16 940 03f0 0E94 0000 call NutEventPost 941 .L111: 942 03f4 D701 movw r26,r14 943 03f6 1F96 adiw r26,15 944 03f8 ED91 ld r30,X+ 945 03fa FC91 ld r31,X 946 03fc 5097 sbiw r26,15+1 947 03fe 5196 adiw r26,17 948 0400 2D91 ld r18,X+ 949 0402 3C91 ld r19,X 950 0404 5297 sbiw r26,17+1 951 .L118: 952 0406 2230 cpi r18,2 953 0408 3105 cpc r19,__zero_reg__ 954 040a 00F4 brsh .+2 955 040c 00C0 rjmp .L177 956 040e 8081 ld r24,Z 957 0410 8138 cpi r24,lo8(-127) 958 0412 01F0 breq .L120 959 0414 8338 cpi r24,lo8(-125) 960 0416 01F0 breq .L121 961 0418 8330 cpi r24,lo8(3) 962 041a 01F4 brne .L119 963 041c 4281 ldd r20,Z+2 964 041e 5381 ldd r21,Z+3 965 0420 6481 ldd r22,Z+4 966 0422 7581 ldd r23,Z+5 967 0424 4115 cp r20,__zero_reg__ 968 0426 5105 cpc r21,__zero_reg__ 969 0428 6105 cpc r22,__zero_reg__ GAS LISTING /tmp/ccHbHl28.s page 18 970 042a 7105 cpc r23,__zero_reg__ 971 042c 01F0 breq .L119 972 042e D801 movw r26,r16 973 0430 9196 adiw r26,33 974 0432 4D93 st X+,r20 975 0434 5D93 st X+,r21 976 0436 6D93 st X+,r22 977 0438 7C93 st X,r23 978 043a 9497 sbiw r26,33+3 979 043c 00C0 rjmp .L119 980 .L120: 981 043e 4281 ldd r20,Z+2 982 0440 5381 ldd r21,Z+3 983 0442 6481 ldd r22,Z+4 984 0444 7581 ldd r23,Z+5 985 0446 4115 cp r20,__zero_reg__ 986 0448 5105 cpc r21,__zero_reg__ 987 044a 6105 cpc r22,__zero_reg__ 988 044c 7105 cpc r23,__zero_reg__ 989 044e 01F0 breq .L119 990 0450 D801 movw r26,r16 991 0452 9D96 adiw r26,45 992 0454 4D93 st X+,r20 993 0456 5D93 st X+,r21 994 0458 6D93 st X+,r22 995 045a 7C93 st X,r23 996 045c D097 sbiw r26,45+3 997 045e 00C0 rjmp .L119 998 .L121: 999 0460 4281 ldd r20,Z+2 1000 0462 5381 ldd r21,Z+3 1001 0464 6481 ldd r22,Z+4 1002 0466 7581 ldd r23,Z+5 1003 0468 4115 cp r20,__zero_reg__ 1004 046a 5105 cpc r21,__zero_reg__ 1005 046c 6105 cpc r22,__zero_reg__ 1006 046e 7105 cpc r23,__zero_reg__ 1007 0470 01F0 breq .L119 1008 0472 D801 movw r26,r16 1009 0474 D196 adiw r26,49 1010 0476 4D93 st X+,r20 1011 0478 5D93 st X+,r21 1012 047a 6D93 st X+,r22 1013 047c 7C93 st X,r23 1014 047e D497 sbiw r26,49+3 1015 .L119: 1016 0480 8181 ldd r24,Z+1 1017 0482 90E0 ldi r25,0 1018 0484 281B sub r18,r24 1019 0486 390B sbc r19,r25 1020 0488 E80F add r30,r24 1021 048a F91F adc r31,r25 1022 048c 00C0 rjmp .L118 1023 .L177: 1024 048e 81E0 ldi r24,lo8(1) 1025 0490 F801 movw r30,r16 1026 0492 8583 std Z+5,r24 GAS LISTING /tmp/ccHbHl28.s page 19 1027 0494 00C0 rjmp .L67 1028 .L71: 1029 0496 20E0 ldi r18,0 1030 0498 00C0 rjmp .L172 1031 .L72: 1032 049a 21E0 ldi r18,lo8(1) 1033 .L172: 1034 049c A701 movw r20,r14 1035 049e 1196 adiw r26,1 1036 04a0 6C91 ld r22,X 1037 04a2 C601 movw r24,r12 1038 04a4 0E94 0000 call IpcpRxConfNakRej 1039 04a8 00C0 rjmp .L63 1040 .L176: 1041 04aa 8930 cpi r24,lo8(9) 1042 04ac 00F0 brlo .L125 1043 04ae 8930 cpi r24,lo8(9) 1044 04b0 01F0 breq .+2 1045 04b2 00C0 rjmp .L124 1046 04b4 C601 movw r24,r12 1047 04b6 0E94 0000 call IpcpLowerDown 1048 04ba 85E0 ldi r24,lo8(5) 1049 04bc D801 movw r26,r16 1050 04be DC96 adiw r26,60 1051 04c0 8C93 st X,r24 1052 04c2 00C0 rjmp .L124 1053 .L125: 1054 04c4 86E0 ldi r24,lo8(6) 1055 04c6 F801 movw r30,r16 1056 04c8 84AF std Z+60,r24 1057 04ca 00C0 rjmp .L124 1058 .L74: 1059 04cc F801 movw r30,r16 1060 04ce 84AD ldd r24,Z+60 1061 04d0 8530 cpi r24,lo8(5) 1062 04d2 01F0 breq .L127 1063 04d4 00F4 brsh .L128 1064 04d6 8430 cpi r24,lo8(4) 1065 04d8 01F4 brne .L63 1066 04da 82E0 ldi r24,lo8(2) 1067 04dc 00C0 rjmp .L171 1068 .L128: 1069 04de 8730 cpi r24,lo8(7) 1070 04e0 01F0 breq .L130 1071 04e2 8930 cpi r24,lo8(9) 1072 04e4 01F4 brne .L63 1073 04e6 C601 movw r24,r12 1074 04e8 0E94 0000 call IpcpLowerDown 1075 04ec F801 movw r30,r16 1076 04ee 6381 ldd r22,Z+3 1077 04f0 6F5F subi r22,lo8(-(1)) 1078 04f2 6383 std Z+3,r22 1079 04f4 C601 movw r24,r12 1080 04f6 0E94 0000 call IpcpTxConfReq 1081 04fa 00C0 rjmp .L63 1082 .L127: 1083 04fc 83E0 ldi r24,lo8(3) GAS LISTING /tmp/ccHbHl28.s page 20 1084 .L173: 1085 04fe F801 movw r30,r16 1086 0500 00C0 rjmp .L170 1087 .L130: 1088 0502 86E0 ldi r24,lo8(6) 1089 .L171: 1090 0504 D801 movw r26,r16 1091 0506 DC96 adiw r26,60 1092 0508 8C93 st X,r24 1093 050a 00C0 rjmp .L63 1094 .L75: 1095 050c D601 movw r26,r12 1096 050e 5196 adiw r26,17 1097 0510 0D91 ld r16,X+ 1098 0512 1C91 ld r17,X 1099 0514 5297 sbiw r26,17+1 1100 0516 CB01 movw r24,r22 1101 0518 0E94 0000 call NutNetBufFree 1102 051c F801 movw r30,r16 1103 051e 84AD ldd r24,Z+60 1104 0520 8730 cpi r24,lo8(7) 1105 0522 01F4 brne .L63 1106 0524 86E0 ldi r24,lo8(6) 1107 .L170: 1108 0526 84AF std Z+60,r24 1109 0528 00C0 rjmp .L63 1110 .L67: 1111 052a C701 movw r24,r14 1112 052c 0E94 0000 call NutNetBufFree 1113 .L63: 1114 /* epilogue start */ 1115 0530 2A96 adiw r28,10 1116 0532 0FB6 in __tmp_reg__,__SREG__ 1117 0534 F894 cli 1118 0536 DEBF out __SP_H__,r29 1119 0538 0FBE out __SREG__,__tmp_reg__ 1120 053a CDBF out __SP_L__,r28 1121 053c DF91 pop r29 1122 053e CF91 pop r28 1123 0540 1F91 pop r17 1124 0542 0F91 pop r16 1125 0544 FF90 pop r15 1126 0546 EF90 pop r14 1127 0548 DF90 pop r13 1128 054a CF90 pop r12 1129 054c BF90 pop r11 1130 054e AF90 pop r10 1131 0550 9F90 pop r9 1132 0552 8F90 pop r8 1133 0554 7F90 pop r7 1134 0556 6F90 pop r6 1135 0558 5F90 pop r5 1136 055a 4F90 pop r4 1137 055c 3F90 pop r3 1138 055e 2F90 pop r2 1139 0560 0895 ret 1140 .size NutIpcpInput, .-NutIpcpInput GAS LISTING /tmp/ccHbHl28.s page 21 1141 .ident "GCC: (GNU) 5.3.0" GAS LISTING /tmp/ccHbHl28.s page 22 DEFINED SYMBOLS *ABS*:0000000000000000 ipcpin.c /tmp/ccHbHl28.s:2 *ABS*:000000000000003e __SP_H__ /tmp/ccHbHl28.s:3 *ABS*:000000000000003d __SP_L__ /tmp/ccHbHl28.s:4 *ABS*:000000000000003f __SREG__ /tmp/ccHbHl28.s:5 *ABS*:000000000000003b __RAMPZ__ /tmp/ccHbHl28.s:6 *ABS*:0000000000000000 __tmp_reg__ /tmp/ccHbHl28.s:7 *ABS*:0000000000000001 __zero_reg__ /tmp/ccHbHl28.s:10 .text.IpcpValidateIpReq:0000000000000000 IpcpValidateIpReq /tmp/ccHbHl28.s:67 .text.IpcpRxConfNakRej:0000000000000000 IpcpRxConfNakRej /tmp/ccHbHl28.s:332 .text.IpcpRxProtRej:0000000000000000 IpcpRxProtRej /tmp/ccHbHl28.s:387 .text.NutIpcpInput:0000000000000000 NutIpcpInput UNDEFINED SYMBOLS NutNetBufFree NutIpcpOutput IpcpLowerDown IpcpTxConfReq __tablejump2__ NutEventPost