ipcpin.lst 40 KB

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