| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949 |
- GAS LISTING /tmp/ccUWh7qo.s page 1
- 1 .file "dm9000.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.DmInit,"ax",@progbits
- 9 .global DmInit
- 10 .type DmInit, @function
- 11 DmInit:
- 12 /* prologue: function */
- 13 /* frame size = 0 */
- 14 /* stack size = 0 */
- 15 .L__stack_usage = 0
- 16 0000 8FEF ldi r24,lo8(-1)
- 17 0002 9FEF ldi r25,lo8(-1)
- 18 0004 0895 ret
- 19 .size DmInit, .-DmInit
- 20 .section .text.DmOutput,"ax",@progbits
- 21 .global DmOutput
- 22 .type DmOutput, @function
- 23 DmOutput:
- 24 0000 EF92 push r14
- 25 0002 FF92 push r15
- 26 0004 0F93 push r16
- 27 0006 1F93 push r17
- 28 0008 CF93 push r28
- 29 000a DF93 push r29
- 30 /* prologue: function */
- 31 /* frame size = 0 */
- 32 /* stack size = 6 */
- 33 .L__stack_usage = 6
- 34 000c FB01 movw r30,r22
- 35 000e 4185 ldd r20,Z+9
- 36 0010 5285 ldd r21,Z+10
- 37 0012 2585 ldd r18,Z+13
- 38 0014 3685 ldd r19,Z+14
- 39 0016 240F add r18,r20
- 40 0018 351F adc r19,r21
- 41 001a 4189 ldd r20,Z+17
- 42 001c 5289 ldd r21,Z+18
- 43 001e 240F add r18,r20
- 44 0020 351F adc r19,r21
- 45 0022 DC01 movw r26,r24
- 46 0024 1F96 adiw r26,15
- 47 0026 ED91 ld r30,X+
- 48 0028 FC91 ld r31,X
- 49 002a 5097 sbiw r26,15+1
- 50 002c 4789 ldd r20,Z+23
- 51 002e 508D ldd r21,Z+24
- 52 0030 4217 cp r20,r18
- 53 0032 5307 cpc r21,r19
- 54 0034 00F0 brlo .L3
- 55 0036 5196 adiw r26,17
- 56 0038 CD91 ld r28,X+
- 57 003a DC91 ld r29,X
- GAS LISTING /tmp/ccUWh7qo.s page 2
- 58 003c 5297 sbiw r26,17+1
- 59 003e 8E01 movw r16,r28
- 60 0040 0C5F subi r16,-4
- 61 0042 1F4F sbci r17,-1
- 62 0044 7E01 movw r14,r28
- 63 0046 B2E0 ldi r27,2
- 64 0048 EB0E add r14,r27
- 65 004a F11C adc r15,__zero_reg__
- 66 .L4:
- 67 004c 8A85 ldd r24,Y+10
- 68 004e 9B85 ldd r25,Y+11
- 69 0050 892B or r24,r25
- 70 0052 01F4 brne .L6
- 71 0054 4091 0000 lds r20,mx_wait.2863
- 72 0058 5091 0000 lds r21,mx_wait.2863+1
- 73 005c 6091 0000 lds r22,mx_wait.2863+2
- 74 0060 7091 0000 lds r23,mx_wait.2863+3
- 75 0064 C801 movw r24,r16
- 76 0066 0E94 0000 call NutEventWait
- 77 006a 892B or r24,r25
- 78 006c 01F4 brne .L6
- 79 006e 8E81 ldd r24,Y+6
- 80 0070 9F81 ldd r25,Y+7
- 81 0072 0297 sbiw r24,2
- 82 0074 04F0 brlt .L7
- 83 0076 44EF ldi r20,lo8(-12)
- 84 0078 51E0 ldi r21,lo8(1)
- 85 007a 60E0 ldi r22,0
- 86 007c 70E0 ldi r23,0
- 87 007e C701 movw r24,r14
- 88 0080 0E94 0000 call NutEventWait
- 89 0084 892B or r24,r25
- 90 0086 01F0 breq .L7
- 91 0088 C801 movw r24,r16
- 92 008a 0E94 0000 call NutEventPost
- 93 008e 00C0 rjmp .L6
- 94 .L7:
- 95 0090 C801 movw r24,r16
- 96 0092 0E94 0000 call NutEventPost
- 97 0096 00C0 rjmp .L4
- 98 .L6:
- 99 0098 84EF ldi r24,lo8(-12)
- 100 009a 91E0 ldi r25,lo8(1)
- 101 009c A0E0 ldi r26,0
- 102 009e B0E0 ldi r27,0
- 103 00a0 8093 0000 sts mx_wait.2863,r24
- 104 00a4 9093 0000 sts mx_wait.2863+1,r25
- 105 00a8 A093 0000 sts mx_wait.2863+2,r26
- 106 00ac B093 0000 sts mx_wait.2863+3,r27
- 107 .L3:
- 108 00b0 8FEF ldi r24,lo8(-1)
- 109 00b2 9FEF ldi r25,lo8(-1)
- 110 /* epilogue start */
- 111 00b4 DF91 pop r29
- 112 00b6 CF91 pop r28
- 113 00b8 1F91 pop r17
- 114 00ba 0F91 pop r16
- GAS LISTING /tmp/ccUWh7qo.s page 3
- 115 00bc FF90 pop r15
- 116 00be EF90 pop r14
- 117 00c0 0895 ret
- 118 .size DmOutput, .-DmOutput
- 119 .section .text.NicStart.isra.4,"ax",@progbits
- 120 .type NicStart.isra.4, @function
- 121 NicStart.isra.4:
- 122 0000 0F93 push r16
- 123 0002 1F93 push r17
- 124 0004 CF93 push r28
- 125 0006 DF93 push r29
- 126 0008 00D0 rcall .
- 127 000a 1F92 push __zero_reg__
- 128 000c CDB7 in r28,__SP_L__
- 129 000e DEB7 in r29,__SP_H__
- 130 /* prologue: function */
- 131 /* frame size = 4 */
- 132 /* stack size = 8 */
- 133 .L__stack_usage = 8
- 134 0010 8C01 movw r16,r24
- 135 0012 85E0 ldi r24,lo8(5)
- 136 0014 0E94 0000 call NutDelay
- 137 0018 85E0 ldi r24,lo8(5)
- 138 001a 0E94 0000 call NutDelay
- 139 001e 85E0 ldi r24,lo8(5)
- 140 0020 0E94 0000 call NutDelay
- 141 0024 F801 movw r30,r16
- 142 0026 8589 ldd r24,Z+21
- 143 0028 8068 ori r24,lo8(-128)
- 144 002a 858B std Z+21,r24
- 145 002c 81E0 ldi r24,lo8(1)
- 146 002e 90E0 ldi r25,0
- 147 0030 A0E0 ldi r26,0
- 148 0032 B0E0 ldi r27,0
- 149 0034 8983 std Y+1,r24
- 150 0036 9A83 std Y+2,r25
- 151 0038 AB83 std Y+3,r26
- 152 003a BC83 std Y+4,r27
- 153 003c BE01 movw r22,r28
- 154 003e 6F5F subi r22,-1
- 155 0040 7F4F sbci r23,-1
- 156 0042 88E0 ldi r24,lo8(8)
- 157 0044 90E0 ldi r25,0
- 158 0046 0E94 0000 call NutPhyCtl
- 159 004a 0AE1 ldi r16,lo8(26)
- 160 004c 10E0 ldi r17,0
- 161 .L17:
- 162 004e BE01 movw r22,r28
- 163 0050 6F5F subi r22,-1
- 164 0052 7F4F sbci r23,-1
- 165 0054 81E0 ldi r24,lo8(1)
- 166 0056 91E0 ldi r25,lo8(1)
- 167 0058 0E94 0000 call NutPhyCtl
- 168 005c 8981 ldd r24,Y+1
- 169 005e 9A81 ldd r25,Y+2
- 170 0060 AB81 ldd r26,Y+3
- 171 0062 BC81 ldd r27,Y+4
- GAS LISTING /tmp/ccUWh7qo.s page 4
- 172 0064 8172 andi r24,33
- 173 0066 9927 clr r25
- 174 0068 AA27 clr r26
- 175 006a BB27 clr r27
- 176 006c 8197 sbiw r24,33
- 177 006e A105 cpc r26,__zero_reg__
- 178 0070 B105 cpc r27,__zero_reg__
- 179 0072 01F0 breq .L18
- 180 0074 0150 subi r16,1
- 181 0076 1109 sbc r17,__zero_reg__
- 182 0078 01F0 breq .L19
- 183 007a 68EC ldi r22,lo8(-56)
- 184 007c 70E0 ldi r23,0
- 185 007e 80E0 ldi r24,0
- 186 0080 90E0 ldi r25,0
- 187 0082 0E94 0000 call NutSleep
- 188 0086 00C0 rjmp .L17
- 189 .L18:
- 190 0088 80E0 ldi r24,0
- 191 008a 90E0 ldi r25,0
- 192 008c 00C0 rjmp .L16
- 193 .L19:
- 194 008e 8FEF ldi r24,lo8(-1)
- 195 0090 9FEF ldi r25,lo8(-1)
- 196 .L16:
- 197 /* epilogue start */
- 198 0092 0F90 pop __tmp_reg__
- 199 0094 0F90 pop __tmp_reg__
- 200 0096 0F90 pop __tmp_reg__
- 201 0098 0F90 pop __tmp_reg__
- 202 009a DF91 pop r29
- 203 009c CF91 pop r28
- 204 009e 1F91 pop r17
- 205 00a0 0F91 pop r16
- 206 00a2 0895 ret
- 207 .size NicStart.isra.4, .-NicStart.isra.4
- 208 .section .text.ether_crc32_le.constprop.5,"ax",@progbits
- 209 .type ether_crc32_le.constprop.5, @function
- 210 ether_crc32_le.constprop.5:
- 211 0000 CF92 push r12
- 212 0002 DF92 push r13
- 213 0004 EF92 push r14
- 214 0006 FF92 push r15
- 215 /* prologue: function */
- 216 /* frame size = 0 */
- 217 /* stack size = 4 */
- 218 .L__stack_usage = 4
- 219 0008 FC01 movw r30,r24
- 220 000a 9C01 movw r18,r24
- 221 000c 2A5F subi r18,-6
- 222 000e 3F4F sbci r19,-1
- 223 0010 6FEF ldi r22,lo8(-1)
- 224 0012 7FEF ldi r23,lo8(-1)
- 225 0014 CB01 movw r24,r22
- 226 .L21:
- 227 0016 4191 ld r20,Z+
- 228 0018 DC01 movw r26,r24
- GAS LISTING /tmp/ccUWh7qo.s page 5
- 229 001a CB01 movw r24,r22
- 230 001c 8427 eor r24,r20
- 231 001e 6C01 movw r12,r24
- 232 0020 7D01 movw r14,r26
- 233 0022 44E0 ldi r20,4
- 234 1:
- 235 0024 F694 lsr r15
- 236 0026 E794 ror r14
- 237 0028 D794 ror r13
- 238 002a C794 ror r12
- 239 002c 4A95 dec r20
- 240 002e 01F4 brne 1b
- 241 0030 8F70 andi r24,15
- 242 0032 9927 clr r25
- 243 0034 AA27 clr r26
- 244 0036 BB27 clr r27
- 245 0038 BC01 movw r22,r24
- 246 003a 660F lsl r22
- 247 003c 771F rol r23
- 248 003e 660F lsl r22
- 249 0040 771F rol r23
- 250 0042 DB01 movw r26,r22
- 251 0044 A050 subi r26,lo8(-(crctab))
- 252 0046 B040 sbci r27,hi8(-(crctab))
- 253 0048 8D91 ld r24,X+
- 254 004a 9D91 ld r25,X+
- 255 004c 0D90 ld __tmp_reg__,X+
- 256 004e BC91 ld r27,X
- 257 0050 A02D mov r26,__tmp_reg__
- 258 0052 8C25 eor r24,r12
- 259 0054 9D25 eor r25,r13
- 260 0056 AE25 eor r26,r14
- 261 0058 BF25 eor r27,r15
- 262 005a 6C01 movw r12,r24
- 263 005c 7D01 movw r14,r26
- 264 005e 64E0 ldi r22,4
- 265 1:
- 266 0060 F694 lsr r15
- 267 0062 E794 ror r14
- 268 0064 D794 ror r13
- 269 0066 C794 ror r12
- 270 0068 6A95 dec r22
- 271 006a 01F4 brne 1b
- 272 006c 8F70 andi r24,15
- 273 006e 9927 clr r25
- 274 0070 AA27 clr r26
- 275 0072 BB27 clr r27
- 276 0074 880F lsl r24
- 277 0076 991F rol r25
- 278 0078 880F lsl r24
- 279 007a 991F rol r25
- 280 007c DC01 movw r26,r24
- 281 007e A050 subi r26,lo8(-(crctab))
- 282 0080 B040 sbci r27,hi8(-(crctab))
- 283 0082 4D91 ld r20,X+
- 284 0084 5D91 ld r21,X+
- 285 0086 6D91 ld r22,X+
- GAS LISTING /tmp/ccUWh7qo.s page 6
- 286 0088 7C91 ld r23,X
- 287 008a CB01 movw r24,r22
- 288 008c BA01 movw r22,r20
- 289 008e 6C25 eor r22,r12
- 290 0090 7D25 eor r23,r13
- 291 0092 8E25 eor r24,r14
- 292 0094 9F25 eor r25,r15
- 293 0096 2E17 cp r18,r30
- 294 0098 3F07 cpc r19,r31
- 295 009a 01F0 breq .+2
- 296 009c 00C0 rjmp .L21
- 297 /* epilogue start */
- 298 009e FF90 pop r15
- 299 00a0 EF90 pop r14
- 300 00a2 DF90 pop r13
- 301 00a4 CF90 pop r12
- 302 00a6 0895 ret
- 303 .size ether_crc32_le.constprop.5, .-ether_crc32_le.constprop.5
- 304 .section .text.DmIOCtl,"ax",@progbits
- 305 .type DmIOCtl, @function
- 306 DmIOCtl:
- 307 0000 4F92 push r4
- 308 0002 5F92 push r5
- 309 0004 6F92 push r6
- 310 0006 7F92 push r7
- 311 0008 8F92 push r8
- 312 000a 9F92 push r9
- 313 000c AF92 push r10
- 314 000e BF92 push r11
- 315 0010 CF92 push r12
- 316 0012 DF92 push r13
- 317 0014 EF92 push r14
- 318 0016 FF92 push r15
- 319 0018 0F93 push r16
- 320 001a 1F93 push r17
- 321 001c CF93 push r28
- 322 001e DF93 push r29
- 323 0020 00D0 rcall .
- 324 0022 00D0 rcall .
- 325 0024 CDB7 in r28,__SP_L__
- 326 0026 DEB7 in r29,__SP_H__
- 327 /* prologue: function */
- 328 /* frame size = 6 */
- 329 /* stack size = 22 */
- 330 .L__stack_usage = 22
- 331 0028 6A01 movw r12,r20
- 332 002a DC01 movw r26,r24
- 333 002c 1F96 adiw r26,15
- 334 002e 0D91 ld r16,X+
- 335 0030 1C91 ld r17,X
- 336 0032 5097 sbiw r26,15+1
- 337 0034 5196 adiw r26,17
- 338 0036 ED90 ld r14,X+
- 339 0038 FC90 ld r15,X
- 340 003a 5297 sbiw r26,17+1
- 341 003c 6730 cpi r22,7
- 342 003e B0E1 ldi r27,16
- GAS LISTING /tmp/ccUWh7qo.s page 7
- 343 0040 7B07 cpc r23,r27
- 344 0042 01F0 breq .L25
- 345 0044 6830 cpi r22,8
- 346 0046 E0E1 ldi r30,16
- 347 0048 7E07 cpc r23,r30
- 348 004a 01F4 brne .+2
- 349 004c 00C0 rjmp .L26
- 350 004e 6530 cpi r22,5
- 351 0050 7041 sbci r23,16
- 352 0052 01F0 breq .+2
- 353 0054 00C0 rjmp .L46
- 354 0056 D801 movw r26,r16
- 355 0058 1596 adiw r26,5
- 356 005a 86E0 ldi r24,lo8(6)
- 357 005c FA01 movw r30,r20
- 358 0:
- 359 005e 0190 ld r0,Z+
- 360 0060 0D92 st X+,r0
- 361 0062 8A95 dec r24
- 362 0064 01F4 brne 0b
- 363 0066 00C0 rjmp .L50
- 364 .L25:
- 365 0068 DA01 movw r26,r20
- 366 006a 8D90 ld r8,X+
- 367 006c 9D90 ld r9,X+
- 368 006e AD90 ld r10,X+
- 369 0070 BC90 ld r11,X
- 370 0072 D801 movw r26,r16
- 371 0074 5D96 adiw r26,29
- 372 0076 ED91 ld r30,X+
- 373 0078 FC91 ld r31,X
- 374 007a 5E97 sbiw r26,29+1
- 375 .L28:
- 376 007c 3097 sbiw r30,0
- 377 007e 01F0 breq .L51
- 378 0080 4085 ldd r20,Z+8
- 379 0082 5185 ldd r21,Z+9
- 380 0084 6285 ldd r22,Z+10
- 381 0086 7385 ldd r23,Z+11
- 382 0088 8416 cp r8,r20
- 383 008a 9506 cpc r9,r21
- 384 008c A606 cpc r10,r22
- 385 008e B706 cpc r11,r23
- 386 0090 01F4 brne .+2
- 387 0092 00C0 rjmp .L46
- 388 0094 0190 ld __tmp_reg__,Z+
- 389 0096 F081 ld r31,Z
- 390 0098 E02D mov r30,__tmp_reg__
- 391 009a 00C0 rjmp .L28
- 392 .L51:
- 393 009c 81E0 ldi r24,lo8(1)
- 394 009e 8983 std Y+1,r24
- 395 00a0 1A82 std Y+2,__zero_reg__
- 396 00a2 8EE5 ldi r24,lo8(94)
- 397 00a4 8B83 std Y+3,r24
- 398 00a6 F601 movw r30,r12
- 399 00a8 8181 ldd r24,Z+1
- GAS LISTING /tmp/ccUWh7qo.s page 8
- 400 00aa 8F77 andi r24,lo8(127)
- 401 00ac 8C83 std Y+4,r24
- 402 00ae 8281 ldd r24,Z+2
- 403 00b0 8D83 std Y+5,r24
- 404 00b2 8381 ldd r24,Z+3
- 405 00b4 8E83 std Y+6,r24
- 406 00b6 8CE0 ldi r24,lo8(12)
- 407 00b8 90E0 ldi r25,0
- 408 00ba 0E94 0000 call malloc
- 409 00be 5C01 movw r10,r24
- 410 00c0 892B or r24,r25
- 411 00c2 01F4 brne .+2
- 412 00c4 00C0 rjmp .L46
- 413 00c6 CE01 movw r24,r28
- 414 00c8 0196 adiw r24,1
- 415 00ca 0E94 0000 call ether_crc32_le.constprop.5
- 416 00ce DC01 movw r26,r24
- 417 00d0 CB01 movw r24,r22
- 418 00d2 8F73 andi r24,63
- 419 00d4 9927 clr r25
- 420 00d6 AA27 clr r26
- 421 00d8 BB27 clr r27
- 422 00da 2C01 movw r4,r24
- 423 00dc 3D01 movw r6,r26
- 424 00de 43E0 ldi r20,3
- 425 1:
- 426 00e0 7694 lsr r7
- 427 00e2 6794 ror r6
- 428 00e4 5794 ror r5
- 429 00e6 4794 ror r4
- 430 00e8 4A95 dec r20
- 431 00ea 01F4 brne 1b
- 432 00ec F701 movw r30,r14
- 433 00ee E40D add r30,r4
- 434 00f0 F51D adc r31,r5
- 435 00f2 BC01 movw r22,r24
- 436 00f4 6770 andi r22,7
- 437 00f6 7727 clr r23
- 438 00f8 81E0 ldi r24,lo8(1)
- 439 00fa 90E0 ldi r25,0
- 440 00fc 00C0 rjmp 2f
- 441 1:
- 442 00fe 880F lsl r24
- 443 2:
- 444 0100 6A95 dec r22
- 445 0102 02F4 brpl 1b
- 446 0104 9685 ldd r25,Z+14
- 447 0106 892B or r24,r25
- 448 0108 8687 std Z+14,r24
- 449 010a 86E0 ldi r24,lo8(6)
- 450 010c FE01 movw r30,r28
- 451 010e 3196 adiw r30,1
- 452 0110 D501 movw r26,r10
- 453 0112 1296 adiw r26,2
- 454 0:
- 455 0114 0190 ld r0,Z+
- 456 0116 0D92 st X+,r0
- GAS LISTING /tmp/ccUWh7qo.s page 9
- 457 0118 8A95 dec r24
- 458 011a 01F4 brne 0b
- 459 011c F601 movw r30,r12
- 460 011e 8081 ld r24,Z
- 461 0120 9181 ldd r25,Z+1
- 462 0122 A281 ldd r26,Z+2
- 463 0124 B381 ldd r27,Z+3
- 464 0126 F501 movw r30,r10
- 465 0128 8087 std Z+8,r24
- 466 012a 9187 std Z+9,r25
- 467 012c A287 std Z+10,r26
- 468 012e B387 std Z+11,r27
- 469 0130 D801 movw r26,r16
- 470 0132 5D96 adiw r26,29
- 471 0134 8D91 ld r24,X+
- 472 0136 9C91 ld r25,X
- 473 0138 5E97 sbiw r26,29+1
- 474 013a 9183 std Z+1,r25
- 475 013c 8083 st Z,r24
- 476 013e 5E96 adiw r26,29+1
- 477 0140 BC92 st X,r11
- 478 0142 AE92 st -X,r10
- 479 0144 5D97 sbiw r26,29
- 480 0146 F701 movw r30,r14
- 481 0148 8589 ldd r24,Z+21
- 482 014a 8068 ori r24,lo8(-128)
- 483 014c 858B std Z+21,r24
- 484 014e 00C0 rjmp .L50
- 485 .L26:
- 486 0150 DA01 movw r26,r20
- 487 0152 8D90 ld r8,X+
- 488 0154 9D90 ld r9,X+
- 489 0156 AD90 ld r10,X+
- 490 0158 BC90 ld r11,X
- 491 015a F801 movw r30,r16
- 492 015c 458D ldd r20,Z+29
- 493 015e 568D ldd r21,Z+30
- 494 0160 FA01 movw r30,r20
- 495 0162 CA01 movw r24,r20
- 496 .L32:
- 497 0164 0097 sbiw r24,0
- 498 0166 01F0 breq .L46
- 499 0168 DC01 movw r26,r24
- 500 016a 1896 adiw r26,8
- 501 016c 4D90 ld r4,X+
- 502 016e 5D90 ld r5,X+
- 503 0170 6D90 ld r6,X+
- 504 0172 7C90 ld r7,X
- 505 0174 1B97 sbiw r26,8+3
- 506 0176 2C91 ld r18,X
- 507 0178 1196 adiw r26,1
- 508 017a 3C91 ld r19,X
- 509 017c 8414 cp r8,r4
- 510 017e 9504 cpc r9,r5
- 511 0180 A604 cpc r10,r6
- 512 0182 B704 cpc r11,r7
- 513 0184 01F0 breq .L33
- GAS LISTING /tmp/ccUWh7qo.s page 10
- 514 0186 FC01 movw r30,r24
- 515 0188 C901 movw r24,r18
- 516 018a 00C0 rjmp .L32
- 517 .L52:
- 518 018c D701 movw r26,r14
- 519 018e 5596 adiw r26,21
- 520 0190 8C91 ld r24,X
- 521 0192 5597 sbiw r26,21
- 522 0194 8068 ori r24,lo8(-128)
- 523 0196 5596 adiw r26,21
- 524 0198 8C93 st X,r24
- 525 .L50:
- 526 019a 80E0 ldi r24,0
- 527 019c 90E0 ldi r25,0
- 528 019e 00C0 rjmp .L47
- 529 .L46:
- 530 01a0 8FEF ldi r24,lo8(-1)
- 531 01a2 9FEF ldi r25,lo8(-1)
- 532 01a4 00C0 rjmp .L47
- 533 .L33:
- 534 01a6 8417 cp r24,r20
- 535 01a8 9507 cpc r25,r21
- 536 01aa 01F4 brne .L48
- 537 01ac F801 movw r30,r16
- 538 01ae 258F std Z+29,r18
- 539 01b0 368F std Z+30,r19
- 540 01b2 00C0 rjmp .L49
- 541 .L48:
- 542 01b4 2083 st Z,r18
- 543 01b6 3183 std Z+1,r19
- 544 .L49:
- 545 01b8 0E94 0000 call free
- 546 01bc F701 movw r30,r14
- 547 01be 3E96 adiw r30,14
- 548 01c0 C701 movw r24,r14
- 549 01c2 4596 adiw r24,21
- 550 .L36:
- 551 01c4 1192 st Z+,__zero_reg__
- 552 01c6 8E17 cp r24,r30
- 553 01c8 9F07 cpc r25,r31
- 554 01ca 01F4 brne .L36
- 555 01cc D801 movw r26,r16
- 556 01ce 5D96 adiw r26,29
- 557 01d0 0D91 ld r16,X+
- 558 01d2 1C91 ld r17,X
- 559 01d4 5E97 sbiw r26,29+1
- 560 01d6 CC24 clr r12
- 561 01d8 C394 inc r12
- 562 01da D12C mov r13,__zero_reg__
- 563 .L37:
- 564 01dc 0115 cp r16,__zero_reg__
- 565 01de 1105 cpc r17,__zero_reg__
- 566 01e0 01F0 breq .L52
- 567 01e2 C801 movw r24,r16
- 568 01e4 0296 adiw r24,2
- 569 01e6 0E94 0000 call ether_crc32_le.constprop.5
- 570 01ea DC01 movw r26,r24
- GAS LISTING /tmp/ccUWh7qo.s page 11
- 571 01ec CB01 movw r24,r22
- 572 01ee 8F73 andi r24,63
- 573 01f0 9927 clr r25
- 574 01f2 AA27 clr r26
- 575 01f4 BB27 clr r27
- 576 01f6 4C01 movw r8,r24
- 577 01f8 5D01 movw r10,r26
- 578 01fa 23E0 ldi r18,3
- 579 1:
- 580 01fc B694 lsr r11
- 581 01fe A794 ror r10
- 582 0200 9794 ror r9
- 583 0202 8794 ror r8
- 584 0204 2A95 dec r18
- 585 0206 01F4 brne 1b
- 586 0208 F701 movw r30,r14
- 587 020a E80D add r30,r8
- 588 020c F91D adc r31,r9
- 589 020e BC01 movw r22,r24
- 590 0210 6770 andi r22,7
- 591 0212 7727 clr r23
- 592 0214 C601 movw r24,r12
- 593 0216 00C0 rjmp 2f
- 594 1:
- 595 0218 880F lsl r24
- 596 2:
- 597 021a 6A95 dec r22
- 598 021c 02F4 brpl 1b
- 599 021e 9685 ldd r25,Z+14
- 600 0220 892B or r24,r25
- 601 0222 8687 std Z+14,r24
- 602 0224 F801 movw r30,r16
- 603 0226 0081 ld r16,Z
- 604 0228 1181 ldd r17,Z+1
- 605 022a 00C0 rjmp .L37
- 606 .L47:
- 607 /* epilogue start */
- 608 022c 2696 adiw r28,6
- 609 022e 0FB6 in __tmp_reg__,__SREG__
- 610 0230 F894 cli
- 611 0232 DEBF out __SP_H__,r29
- 612 0234 0FBE out __SREG__,__tmp_reg__
- 613 0236 CDBF out __SP_L__,r28
- 614 0238 DF91 pop r29
- 615 023a CF91 pop r28
- 616 023c 1F91 pop r17
- 617 023e 0F91 pop r16
- 618 0240 FF90 pop r15
- 619 0242 EF90 pop r14
- 620 0244 DF90 pop r13
- 621 0246 CF90 pop r12
- 622 0248 BF90 pop r11
- 623 024a AF90 pop r10
- 624 024c 9F90 pop r9
- 625 024e 8F90 pop r8
- 626 0250 7F90 pop r7
- 627 0252 6F90 pop r6
- GAS LISTING /tmp/ccUWh7qo.s page 12
- 628 0254 5F90 pop r5
- 629 0256 4F90 pop r4
- 630 0258 0895 ret
- 631 .size DmIOCtl, .-DmIOCtl
- 632 .section .text.NicRxLanc,"ax",@progbits
- 633 .global NicRxLanc
- 634 .type NicRxLanc, @function
- 635 NicRxLanc:
- 636 /* prologue: function */
- 637 /* frame size = 0 */
- 638 /* stack size = 0 */
- 639 .L__stack_usage = 0
- 640 0000 FC01 movw r30,r24
- 641 0002 0785 ldd r16,Z+15
- 642 0004 1089 ldd r17,Z+16
- 643 0006 C189 ldd r28,Z+17
- 644 0008 D289 ldd r29,Z+18
- 645 .L54:
- 646 000a F801 movw r30,r16
- 647 000c 6581 ldd r22,Z+5
- 648 000e 5681 ldd r21,Z+6
- 649 0010 4781 ldd r20,Z+7
- 650 0012 3085 ldd r19,Z+8
- 651 0014 2185 ldd r18,Z+9
- 652 0016 9285 ldd r25,Z+10
- 653 0018 862F mov r24,r22
- 654 001a 852B or r24,r21
- 655 001c 842B or r24,r20
- 656 001e 832B or r24,r19
- 657 0020 822B or r24,r18
- 658 0022 892B or r24,r25
- 659 0024 01F4 brne .L69
- 660 .L55:
- 661 0026 6AE0 ldi r22,lo8(10)
- 662 0028 70E0 ldi r23,0
- 663 002a 80E0 ldi r24,0
- 664 002c 90E0 ldi r25,0
- 665 002e 0E94 0000 call NutSleep
- 666 0032 00C0 rjmp .L54
- 667 .L69:
- 668 0034 5623 and r21,r22
- 669 0036 4523 and r20,r21
- 670 0038 3423 and r19,r20
- 671 003a 2323 and r18,r19
- 672 003c 9223 and r25,r18
- 673 003e 9F3F cpi r25,lo8(-1)
- 674 0040 01F0 breq .L55
- 675 .L56:
- 676 0042 CE01 movw r24,r28
- 677 0044 0E94 0000 call NicStart.isra.4
- 678 0048 892B or r24,r25
- 679 004a 01F0 breq .L70
- 680 004c 68EE ldi r22,lo8(-24)
- 681 004e 73E0 ldi r23,lo8(3)
- 682 0050 80E0 ldi r24,0
- 683 0052 90E0 ldi r25,0
- 684 0054 0E94 0000 call NutSleep
- GAS LISTING /tmp/ccUWh7qo.s page 13
- 685 0058 00C0 rjmp .L56
- 686 .L70:
- 687 005a CE01 movw r24,r28
- 688 005c 0496 adiw r24,4
- 689 005e 0E94 0000 call NutEventPost
- 690 0062 89E0 ldi r24,lo8(9)
- 691 0064 0E94 0000 call NutThreadSetPriority
- 692 .L62:
- 693 0068 40ED ldi r20,lo8(-48)
- 694 006a 57E0 ldi r21,lo8(7)
- 695 006c 60E0 ldi r22,0
- 696 006e 70E0 ldi r23,0
- 697 0070 CE01 movw r24,r28
- 698 0072 0E94 0000 call NutEventWait
- 699 .L58:
- 700 0076 8A85 ldd r24,Y+10
- 701 0078 9B85 ldd r25,Y+11
- 702 007a 892B or r24,r25
- 703 007c 01F0 breq .L62
- 704 007e CE01 movw r24,r28
- 705 0080 0E94 0000 call NicStart.isra.4
- 706 0084 892B or r24,r25
- 707 0086 01F4 brne .L59
- 708 0088 1B86 std Y+11,__zero_reg__
- 709 008a 1A86 std Y+10,__zero_reg__
- 710 008c 1F82 std Y+7,__zero_reg__
- 711 008e 1E82 std Y+6,__zero_reg__
- 712 0090 1986 std Y+9,__zero_reg__
- 713 0092 1886 std Y+8,__zero_reg__
- 714 0094 00C0 rjmp .L58
- 715 .L59:
- 716 0096 68EE ldi r22,lo8(-24)
- 717 0098 73E0 ldi r23,lo8(3)
- 718 009a 80E0 ldi r24,0
- 719 009c 90E0 ldi r25,0
- 720 009e 0E94 0000 call NutSleep
- 721 00a2 00C0 rjmp .L58
- 722 .size NicRxLanc, .-NicRxLanc
- 723 .data
- 724 .type mx_wait.2863, @object
- 725 .size mx_wait.2863, 4
- 726 mx_wait.2863:
- 727 0000 88 .byte -120
- 728 0001 13 .byte 19
- 729 0002 00 .byte 0
- 730 0003 00 .byte 0
- 731 .global devDm9000
- 732 .type devDm9000, @object
- 733 .size devDm9000, 37
- 734 devDm9000:
- 735 0004 0000 .word 0
- 736 0006 65 .byte 101
- 737 0007 74 .byte 116
- 738 0008 68 .byte 104
- 739 0009 30 .byte 48
- 740 000a 00 .byte 0
- 741 000b 00 .byte 0
- GAS LISTING /tmp/ccUWh7qo.s page 14
- 742 000c 00 .byte 0
- 743 000d 00 .byte 0
- 744 000e 00 .byte 0
- 745 000f 03 .byte 3
- 746 0010 0000 .word 0
- 747 0012 00 .byte 0
- 748 0013 0000 .word ifn_eth0
- 749 0015 0000 .word dcb_eth0
- 750 0017 0000 .word gs(DmInit)
- 751 0019 0000 .word gs(DmIOCtl)
- 752 001b 0000 .word 0
- 753 001d 0000 .word 0
- 754 001f 0000 .word 0
- 755 0021 0000 .word 0
- 756 0023 0000 .word 0
- 757 0025 0000 .word 0
- 758 0027 0000 .word 0
- 759 .type ifn_eth0, @object
- 760 .size ifn_eth0, 39
- 761 ifn_eth0:
- 762 0029 06 .byte 6
- 763 002a 00 .byte 0
- 764 002b 00 .byte 0
- 765 002c 00 .byte 0
- 766 002d 00 .byte 0
- 767 002e 00 .byte 0
- 768 002f 00 .byte 0
- 769 0030 00 .byte 0
- 770 0031 00 .byte 0
- 771 0032 00 .byte 0
- 772 0033 00 .byte 0
- 773 0034 00 .byte 0
- 774 0035 00 .byte 0
- 775 0036 00 .byte 0
- 776 0037 00 .byte 0
- 777 0038 00 .byte 0
- 778 0039 00 .byte 0
- 779 003a 00 .byte 0
- 780 003b 00 .byte 0
- 781 003c 00 .byte 0
- 782 003d 00 .byte 0
- 783 003e 00 .byte 0
- 784 003f 00 .byte 0
- 785 0040 DC05 .word 1500
- 786 0042 0000 .word 0
- 787 0044 0000 .word 0
- 788 0046 0000 .word 0
- 789 0048 0000 .word gs(NutEtherInput)
- 790 004a 0000 .word gs(DmOutput)
- 791 004c 0000 .word gs(NutEtherOutput)
- 792 004e 0000 .zero 2
- 793 .local dcb_eth0
- 794 .comm dcb_eth0,22,1
- 795 .section .rodata
- 796 .type crctab, @object
- 797 .size crctab, 64
- 798 crctab:
- GAS LISTING /tmp/ccUWh7qo.s page 15
- 799 0000 00 .byte 0
- 800 0001 00 .byte 0
- 801 0002 00 .byte 0
- 802 0003 00 .byte 0
- 803 0004 64 .byte 100
- 804 0005 10 .byte 16
- 805 0006 B7 .byte -73
- 806 0007 1D .byte 29
- 807 0008 C8 .byte -56
- 808 0009 20 .byte 32
- 809 000a 6E .byte 110
- 810 000b 3B .byte 59
- 811 000c AC .byte -84
- 812 000d 30 .byte 48
- 813 000e D9 .byte -39
- 814 000f 26 .byte 38
- 815 0010 90 .byte -112
- 816 0011 41 .byte 65
- 817 0012 DC .byte -36
- 818 0013 76 .byte 118
- 819 0014 F4 .byte -12
- 820 0015 51 .byte 81
- 821 0016 6B .byte 107
- 822 0017 6B .byte 107
- 823 0018 58 .byte 88
- 824 0019 61 .byte 97
- 825 001a B2 .byte -78
- 826 001b 4D .byte 77
- 827 001c 3C .byte 60
- 828 001d 71 .byte 113
- 829 001e 05 .byte 5
- 830 001f 50 .byte 80
- 831 0020 20 .byte 32
- 832 0021 83 .byte -125
- 833 0022 B8 .byte -72
- 834 0023 ED .byte -19
- 835 0024 44 .byte 68
- 836 0025 93 .byte -109
- 837 0026 0F .byte 15
- 838 0027 F0 .byte -16
- 839 0028 E8 .byte -24
- 840 0029 A3 .byte -93
- 841 002a D6 .byte -42
- 842 002b D6 .byte -42
- 843 002c 8C .byte -116
- 844 002d B3 .byte -77
- 845 002e 61 .byte 97
- 846 002f CB .byte -53
- 847 0030 B0 .byte -80
- 848 0031 C2 .byte -62
- 849 0032 64 .byte 100
- 850 0033 9B .byte -101
- 851 0034 D4 .byte -44
- 852 0035 D2 .byte -46
- 853 0036 D3 .byte -45
- 854 0037 86 .byte -122
- 855 0038 78 .byte 120
- GAS LISTING /tmp/ccUWh7qo.s page 16
- 856 0039 E2 .byte -30
- 857 003a 0A .byte 10
- 858 003b A0 .byte -96
- 859 003c 1C .byte 28
- 860 003d F2 .byte -14
- 861 003e BD .byte -67
- 862 003f BD .byte -67
- 863 .ident "GCC: (GNU) 5.3.0"
- 864 .global __do_copy_data
- 865 .global __do_clear_bss
- GAS LISTING /tmp/ccUWh7qo.s page 17
- DEFINED SYMBOLS
- *ABS*:0000000000000000 dm9000.c
- /tmp/ccUWh7qo.s:2 *ABS*:000000000000003e __SP_H__
- /tmp/ccUWh7qo.s:3 *ABS*:000000000000003d __SP_L__
- /tmp/ccUWh7qo.s:4 *ABS*:000000000000003f __SREG__
- /tmp/ccUWh7qo.s:5 *ABS*:000000000000003b __RAMPZ__
- /tmp/ccUWh7qo.s:6 *ABS*:0000000000000000 __tmp_reg__
- /tmp/ccUWh7qo.s:7 *ABS*:0000000000000001 __zero_reg__
- /tmp/ccUWh7qo.s:11 .text.DmInit:0000000000000000 DmInit
- /tmp/ccUWh7qo.s:23 .text.DmOutput:0000000000000000 DmOutput
- /tmp/ccUWh7qo.s:726 .data:0000000000000000 mx_wait.2863
- /tmp/ccUWh7qo.s:121 .text.NicStart.isra.4:0000000000000000 NicStart.isra.4
- /tmp/ccUWh7qo.s:210 .text.ether_crc32_le.constprop.5:0000000000000000 ether_crc32_le.constprop.5
- /tmp/ccUWh7qo.s:798 .rodata:0000000000000000 crctab
- /tmp/ccUWh7qo.s:306 .text.DmIOCtl:0000000000000000 DmIOCtl
- /tmp/ccUWh7qo.s:635 .text.NicRxLanc:0000000000000000 NicRxLanc
- /tmp/ccUWh7qo.s:734 .data:0000000000000004 devDm9000
- /tmp/ccUWh7qo.s:761 .data:0000000000000029 ifn_eth0
- .bss:0000000000000000 dcb_eth0
- UNDEFINED SYMBOLS
- NutEventWait
- NutEventPost
- NutDelay
- NutPhyCtl
- NutSleep
- malloc
- free
- NutThreadSetPriority
- NutEtherInput
- NutEtherOutput
- __do_copy_data
- __do_clear_bss
|