ppp_hdlc.lst 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335
  1. GAS LISTING /tmp/ccGY9WWs.s page 1
  2. 1 .file "ppp_hdlc.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.PppHdlcInit,"ax",@progbits
  10. 9 .type PppHdlcInit, @function
  11. 10 PppHdlcInit:
  12. 11 /* prologue: function */
  13. 12 /* frame size = 0 */
  14. 13 /* stack size = 0 */
  15. 14 .L__stack_usage = 0
  16. 15 0000 80E0 ldi r24,0
  17. 16 0002 90E0 ldi r25,0
  18. 17 0004 0895 ret
  19. 18 .size PppHdlcInit, .-PppHdlcInit
  20. 19 .section .text.PppHdlcRead,"ax",@progbits
  21. 20 .type PppHdlcRead, @function
  22. 21 PppHdlcRead:
  23. 22 /* prologue: function */
  24. 23 /* frame size = 0 */
  25. 24 /* stack size = 0 */
  26. 25 .L__stack_usage = 0
  27. 26 0000 DC01 movw r26,r24
  28. 27 0002 ED91 ld r30,X+
  29. 28 0004 FC91 ld r31,X
  30. 29 0006 0188 ldd __tmp_reg__,Z+17
  31. 30 0008 F289 ldd r31,Z+18
  32. 31 000a E02D mov r30,__tmp_reg__
  33. 32 000c 8081 ld r24,Z
  34. 33 000e 9181 ldd r25,Z+1
  35. 34 0010 0C94 0000 jmp _read
  36. 35 .size PppHdlcRead, .-PppHdlcRead
  37. 36 .section .text.PppHdlcReceive,"ax",@progbits
  38. 37 .global PppHdlcReceive
  39. 38 .type PppHdlcReceive, @function
  40. 39 PppHdlcReceive:
  41. 40 0000 CF93 push r28
  42. 41 0002 DF93 push r29
  43. 42 0004 CDB7 in r28,__SP_L__
  44. 43 0006 DEB7 in r29,__SP_H__
  45. 44 0008 2E97 sbiw r28,14
  46. 45 000a 0FB6 in __tmp_reg__,__SREG__
  47. 46 000c F894 cli
  48. 47 000e DEBF out __SP_H__,r29
  49. 48 0010 0FBE out __SREG__,__tmp_reg__
  50. 49 0012 CDBF out __SP_L__,r28
  51. 50 /* prologue: function */
  52. 51 /* frame size = 14 */
  53. 52 /* stack size = 16 */
  54. 53 .L__stack_usage = 16
  55. 54 0014 9887 std Y+8,r25
  56. 55 0016 8F83 std Y+7,r24
  57. 56 0018 DC01 movw r26,r24
  58. 57 001a 5196 adiw r26,17
  59. GAS LISTING /tmp/ccGY9WWs.s page 2
  60. 58 001c 2D90 ld r2,X+
  61. 59 001e 3C90 ld r3,X
  62. 60 0020 5297 sbiw r26,17+1
  63. 61 0022 1F96 adiw r26,15
  64. 62 0024 AD90 ld r10,X+
  65. 63 0026 BC90 ld r11,X
  66. 64 0028 5097 sbiw r26,15+1
  67. 65 002a F501 movw r30,r10
  68. 66 002c 0784 ldd __tmp_reg__,Z+15
  69. 67 002e F089 ldd r31,Z+16
  70. 68 0030 E02D mov r30,__tmp_reg__
  71. 69 0032 FA87 std Y+10,r31
  72. 70 0034 E987 std Y+9,r30
  73. 71 0036 88EE ldi r24,lo8(-24)
  74. 72 0038 93E0 ldi r25,lo8(3)
  75. 73 003a A0E0 ldi r26,0
  76. 74 003c B0E0 ldi r27,0
  77. 75 003e 8983 std Y+1,r24
  78. 76 0040 9A83 std Y+2,r25
  79. 77 0042 AB83 std Y+3,r26
  80. 78 0044 BC83 std Y+4,r27
  81. 79 0046 80E4 ldi r24,lo8(64)
  82. 80 0048 90E0 ldi r25,0
  83. 81 004a 0E94 0000 call malloc
  84. 82 004e 582E mov r5,r24
  85. 83 0050 492E mov r4,r25
  86. 84 0052 AE01 movw r20,r28
  87. 85 0054 4F5F subi r20,-1
  88. 86 0056 5F4F sbci r21,-1
  89. 87 0058 6BE0 ldi r22,lo8(11)
  90. 88 005a 71E0 ldi r23,lo8(1)
  91. 89 005c D101 movw r26,r2
  92. 90 005e 8D91 ld r24,X+
  93. 91 0060 9C91 ld r25,X
  94. 92 0062 0E94 0000 call _ioctl
  95. 93 0066 83E0 ldi r24,lo8(3)
  96. 94 0068 EF81 ldd r30,Y+7
  97. 95 006a F885 ldd r31,Y+8
  98. 96 006c 8387 std Z+11,r24
  99. 97 006e A985 ldd r26,Y+9
  100. 98 0070 BA85 ldd r27,Y+10
  101. 99 0072 5796 adiw r26,23
  102. 100 0074 8D91 ld r24,X+
  103. 101 0076 9C91 ld r25,X
  104. 102 0078 5897 sbiw r26,23+1
  105. 103 007a F101 movw r30,r2
  106. 104 007c 9587 std Z+13,r25
  107. 105 007e 8487 std Z+12,r24
  108. 106 0080 0296 adiw r24,2
  109. 107 0082 0E94 0000 call malloc
  110. 108 0086 3C01 movw r6,r24
  111. 109 0088 80E0 ldi r24,lo8(gs(PppHdlcOutput))
  112. 110 008a 90E0 ldi r25,hi8(gs(PppHdlcOutput))
  113. 111 008c A985 ldd r26,Y+9
  114. 112 008e BA85 ldd r27,Y+10
  115. 113 0090 9296 adiw r26,33+1
  116. 114 0092 9C93 st X,r25
  117. GAS LISTING /tmp/ccGY9WWs.s page 3
  118. 115 0094 8E93 st -X,r24
  119. 116 0096 9197 sbiw r26,33
  120. 117 0098 D501 movw r26,r10
  121. 118 009a 5596 adiw r26,21
  122. 119 009c ED91 ld r30,X+
  123. 120 009e FC91 ld r31,X
  124. 121 00a0 5697 sbiw r26,21+1
  125. 122 00a2 40E0 ldi r20,0
  126. 123 00a4 50E0 ldi r21,0
  127. 124 00a6 63E0 ldi r22,lo8(3)
  128. 125 00a8 70E0 ldi r23,0
  129. 126 00aa C501 movw r24,r10
  130. 127 00ac 1995 eicall
  131. 128 00ae F101 movw r30,r2
  132. 129 00b0 3296 adiw r30,2
  133. 130 00b2 FC87 std Y+12,r31
  134. 131 00b4 EB87 std Y+11,r30
  135. 132 00b6 CF01 movw r24,r30
  136. 133 00b8 0E94 0000 call NutEventPost
  137. 134 00bc 7301 movw r14,r6
  138. 135 00be E52D mov r30,r5
  139. 136 00c0 F42D mov r31,r4
  140. 137 00c2 20E0 ldi r18,0
  141. 138 00c4 30E0 ldi r19,0
  142. 139 00c6 00E0 ldi r16,0
  143. 140 00c8 10E0 ldi r17,0
  144. 141 00ca CC24 clr r12
  145. 142 00cc CA94 dec r12
  146. 143 00ce DC2C mov r13,r12
  147. 144 00d0 812C mov r8,__zero_reg__
  148. 145 00d2 912C mov r9,__zero_reg__
  149. 146 .L4:
  150. 147 00d4 8114 cp r8,__zero_reg__
  151. 148 00d6 9104 cpc r9,__zero_reg__
  152. 149 00d8 01F4 brne .L24
  153. 150 00da 40E4 ldi r20,lo8(64)
  154. 151 00dc 50E0 ldi r21,0
  155. 152 00de 652D mov r22,r5
  156. 153 00e0 742D mov r23,r4
  157. 154 00e2 D101 movw r26,r2
  158. 155 00e4 8D91 ld r24,X+
  159. 156 00e6 9C91 ld r25,X
  160. 157 00e8 2E87 std Y+14,r18
  161. 158 00ea 3D87 std Y+13,r19
  162. 159 00ec 0E94 0000 call _read
  163. 160 00f0 4C01 movw r8,r24
  164. 161 00f2 EF81 ldd r30,Y+7
  165. 162 00f4 F885 ldd r31,Y+8
  166. 163 00f6 8785 ldd r24,Z+15
  167. 164 00f8 9089 ldd r25,Z+16
  168. 165 00fa 2E85 ldd r18,Y+14
  169. 166 00fc 3D85 ldd r19,Y+13
  170. 167 00fe 5D82 std Y+5,r5
  171. 168 0100 4E82 std Y+6,r4
  172. 169 0102 892B or r24,r25
  173. 170 0104 01F4 brne .L5
  174. 171 0106 8824 clr r8
  175. GAS LISTING /tmp/ccGY9WWs.s page 4
  176. 172 0108 8A94 dec r8
  177. 173 010a 982C mov r9,r8
  178. 174 010c 00C0 rjmp .L5
  179. 175 .L24:
  180. 176 010e 97FC sbrc r9,7
  181. 177 0110 00C0 rjmp .L7
  182. 178 0112 CF01 movw r24,r30
  183. 179 0114 0196 adiw r24,1
  184. 180 0116 9E83 std Y+6,r25
  185. 181 0118 8D83 std Y+5,r24
  186. 182 011a 8081 ld r24,Z
  187. 183 011c 91E0 ldi r25,1
  188. 184 011e 891A sub r8,r25
  189. 185 0120 9108 sbc r9,__zero_reg__
  190. 186 0122 3323 tst r19
  191. 187 0124 01F4 brne .+2
  192. 188 0126 00C0 rjmp .L8
  193. 189 0128 8E37 cpi r24,lo8(126)
  194. 190 012a 01F0 breq .L9
  195. 191 012c 8D37 cpi r24,lo8(125)
  196. 192 012e 01F4 brne .L25
  197. 193 0130 21E0 ldi r18,lo8(1)
  198. 194 .L5:
  199. 195 0132 ED81 ldd r30,Y+5
  200. 196 0134 FE81 ldd r31,Y+6
  201. 197 0136 00C0 rjmp .L4
  202. 198 .L25:
  203. 199 0138 2223 tst r18
  204. 200 013a 01F0 breq .L10
  205. 201 013c A0E2 ldi r26,lo8(32)
  206. 202 013e 8A27 eor r24,r26
  207. 203 .L10:
  208. 204 0140 A801 movw r20,r16
  209. 205 0142 4F5F subi r20,-1
  210. 206 0144 5F4F sbci r21,-1
  211. 207 0146 F101 movw r30,r2
  212. 208 0148 6485 ldd r22,Z+12
  213. 209 014a 7585 ldd r23,Z+13
  214. 210 014c 6E5F subi r22,-2
  215. 211 014e 7F4F sbci r23,-1
  216. 212 0150 0617 cp r16,r22
  217. 213 0152 1707 cpc r17,r23
  218. 214 0154 00F0 brlo .L26
  219. 215 0156 8A01 movw r16,r20
  220. 216 0158 20E0 ldi r18,0
  221. 217 015a 30E0 ldi r19,0
  222. 218 015c 00C0 rjmp .L5
  223. 219 .L26:
  224. 220 015e 6D2D mov r22,r13
  225. 221 0160 7727 clr r23
  226. 222 0162 E82F mov r30,r24
  227. 223 0164 F0E0 ldi r31,0
  228. 224 0166 EC25 eor r30,r12
  229. 225 0168 EE0F lsl r30
  230. 226 016a FF1F rol r31
  231. 227 016c E050 subi r30,lo8(-(fcstab))
  232. 228 016e F040 sbci r31,hi8(-(fcstab))
  233. GAS LISTING /tmp/ccGY9WWs.s page 5
  234. 229 0170 C080 ld r12,Z
  235. 230 0172 D180 ldd r13,Z+1
  236. 231 0174 C626 eor r12,r22
  237. 232 0176 D726 eor r13,r23
  238. 233 0178 D701 movw r26,r14
  239. 234 017a 8C93 st X,r24
  240. 235 017c 8A01 movw r16,r20
  241. 236 017e F701 movw r30,r14
  242. 237 0180 3196 adiw r30,1
  243. 238 0182 7F01 movw r14,r30
  244. 239 0184 20E0 ldi r18,0
  245. 240 0186 00C0 rjmp .L5
  246. 241 .L9:
  247. 242 0188 0230 cpi r16,2
  248. 243 018a 1105 cpc r17,__zero_reg__
  249. 244 018c 04F0 brlt .L12
  250. 245 018e F8EB ldi r31,-72
  251. 246 0190 CF16 cp r12,r31
  252. 247 0192 F0EF ldi r31,-16
  253. 248 0194 DF06 cpc r13,r31
  254. 249 0196 01F4 brne .L12
  255. 250 0198 0250 subi r16,2
  256. 251 019a 1109 sbc r17,__zero_reg__
  257. 252 019c A801 movw r20,r16
  258. 253 019e 60E1 ldi r22,lo8(16)
  259. 254 01a0 80E0 ldi r24,0
  260. 255 01a2 90E0 ldi r25,0
  261. 256 01a4 0E94 0000 call NutNetBufAlloc
  262. 257 01a8 7C01 movw r14,r24
  263. 258 01aa 0097 sbiw r24,0
  264. 259 01ac 01F0 breq .L12
  265. 260 01ae A801 movw r20,r16
  266. 261 01b0 B301 movw r22,r6
  267. 262 01b2 DC01 movw r26,r24
  268. 263 01b4 1396 adiw r26,3
  269. 264 01b6 8D91 ld r24,X+
  270. 265 01b8 9C91 ld r25,X
  271. 266 01ba 1497 sbiw r26,3+1
  272. 267 01bc 0E94 0000 call memcpy
  273. 268 01c0 A985 ldd r26,Y+9
  274. 269 01c2 BA85 ldd r27,Y+10
  275. 270 01c4 5F96 adiw r26,31
  276. 271 01c6 ED91 ld r30,X+
  277. 272 01c8 FC91 ld r31,X
  278. 273 01ca 9097 sbiw r26,31+1
  279. 274 01cc B701 movw r22,r14
  280. 275 01ce C501 movw r24,r10
  281. 276 01d0 1995 eicall
  282. 277 01d2 00C0 rjmp .L12
  283. 278 .L8:
  284. 279 01d4 8E37 cpi r24,lo8(126)
  285. 280 01d6 01F0 breq .+2
  286. 281 01d8 00C0 rjmp .L5
  287. 282 01da 00C0 rjmp .L12
  288. 283 .L7:
  289. 284 01dc D501 movw r26,r10
  290. 285 01de 5596 adiw r26,21
  291. GAS LISTING /tmp/ccGY9WWs.s page 6
  292. 286 01e0 ED91 ld r30,X+
  293. 287 01e2 FC91 ld r31,X
  294. 288 01e4 5697 sbiw r26,21+1
  295. 289 01e6 40E0 ldi r20,0
  296. 290 01e8 50E0 ldi r21,0
  297. 291 01ea 64E0 ldi r22,lo8(4)
  298. 292 01ec 70E0 ldi r23,0
  299. 293 01ee C501 movw r24,r10
  300. 294 01f0 1995 eicall
  301. 295 01f2 85E0 ldi r24,lo8(5)
  302. 296 01f4 EF81 ldd r30,Y+7
  303. 297 01f6 F885 ldd r31,Y+8
  304. 298 01f8 8387 std Z+11,r24
  305. 299 01fa 8B85 ldd r24,Y+11
  306. 300 01fc 9C85 ldd r25,Y+12
  307. 301 01fe 0E94 0000 call NutEventPost
  308. 302 0202 0E94 0000 call NutThreadExit
  309. 303 .L13:
  310. 304 0206 00C0 rjmp .L13
  311. 305 .L12:
  312. 306 0208 7301 movw r14,r6
  313. 307 020a 20E0 ldi r18,0
  314. 308 020c 31E0 ldi r19,lo8(1)
  315. 309 020e 00E0 ldi r16,0
  316. 310 0210 10E0 ldi r17,0
  317. 311 0212 CC24 clr r12
  318. 312 0214 CA94 dec r12
  319. 313 0216 DC2C mov r13,r12
  320. 314 0218 00C0 rjmp .L5
  321. 315 .size PppHdlcReceive, .-PppHdlcReceive
  322. 316 .section .text.PppHdlcWrite,"ax",@progbits
  323. 317 .type PppHdlcWrite, @function
  324. 318 PppHdlcWrite:
  325. 319 /* prologue: function */
  326. 320 /* frame size = 0 */
  327. 321 /* stack size = 0 */
  328. 322 .L__stack_usage = 0
  329. 323 0000 DC01 movw r26,r24
  330. 324 0002 ED91 ld r30,X+
  331. 325 0004 FC91 ld r31,X
  332. 326 0006 0188 ldd __tmp_reg__,Z+17
  333. 327 0008 F289 ldd r31,Z+18
  334. 328 000a E02D mov r30,__tmp_reg__
  335. 329 000c 8081 ld r24,Z
  336. 330 000e 9181 ldd r25,Z+1
  337. 331 0010 0C94 0000 jmp _write
  338. 332 .size PppHdlcWrite, .-PppHdlcWrite
  339. 333 .section .text.PppHdlcOpen,"ax",@progbits
  340. 334 .type PppHdlcOpen, @function
  341. 335 PppHdlcOpen:
  342. 336 0000 0F93 push r16
  343. 337 0002 1F93 push r17
  344. 338 0004 CF93 push r28
  345. 339 0006 DF93 push r29
  346. 340 /* prologue: function */
  347. 341 /* frame size = 0 */
  348. 342 /* stack size = 4 */
  349. GAS LISTING /tmp/ccGY9WWs.s page 7
  350. 343 .L__stack_usage = 4
  351. 344 0008 EC01 movw r28,r24
  352. 345 000a 0989 ldd r16,Y+17
  353. 346 000c 1A89 ldd r17,Y+18
  354. 347 000e BA01 movw r22,r20
  355. 348 0010 0396 adiw r24,3
  356. 349 0012 0E94 0000 call _open
  357. 350 0016 F801 movw r30,r16
  358. 351 0018 9183 std Z+1,r25
  359. 352 001a 8083 st Z,r24
  360. 353 001c 0196 adiw r24,1
  361. 354 001e 01F4 brne .L29
  362. 355 .L31:
  363. 356 0020 8FEF ldi r24,lo8(-1)
  364. 357 0022 9FEF ldi r25,lo8(-1)
  365. 358 0024 00C0 rjmp .L30
  366. 359 .L29:
  367. 360 0026 8FEF ldi r24,lo8(-1)
  368. 361 0028 9FEF ldi r25,lo8(-1)
  369. 362 002a DC01 movw r26,r24
  370. 363 002c F801 movw r30,r16
  371. 364 002e 8087 std Z+8,r24
  372. 365 0030 9187 std Z+9,r25
  373. 366 0032 A287 std Z+10,r26
  374. 367 0034 B387 std Z+11,r27
  375. 368 0036 64E0 ldi r22,lo8(4)
  376. 369 0038 70E0 ldi r23,0
  377. 370 003a 81E0 ldi r24,lo8(1)
  378. 371 003c 90E0 ldi r25,0
  379. 372 003e 0E94 0000 call calloc
  380. 373 0042 FC01 movw r30,r24
  381. 374 0044 0097 sbiw r24,0
  382. 375 0046 01F0 breq .L31
  383. 376 0048 D183 std Z+1,r29
  384. 377 004a C083 st Z,r28
  385. 378 .L30:
  386. 379 /* epilogue start */
  387. 380 004c DF91 pop r29
  388. 381 004e CF91 pop r28
  389. 382 0050 1F91 pop r17
  390. 383 0052 0F91 pop r16
  391. 384 0054 0895 ret
  392. 385 .size PppHdlcOpen, .-PppHdlcOpen
  393. 386 .section .text.PppHdlcSendByte.isra.0,"ax",@progbits
  394. 387 .type PppHdlcSendByte.isra.0, @function
  395. 388 PppHdlcSendByte.isra.0:
  396. 389 0000 CF93 push r28
  397. 390 0002 DF93 push r29
  398. 391 0004 1F92 push __zero_reg__
  399. 392 0006 CDB7 in r28,__SP_L__
  400. 393 0008 DEB7 in r29,__SP_H__
  401. 394 /* prologue: function */
  402. 395 /* frame size = 1 */
  403. 396 /* stack size = 3 */
  404. 397 .L__stack_usage = 3
  405. 398 000a 6983 std Y+1,r22
  406. 399 000c 41E0 ldi r20,lo8(1)
  407. GAS LISTING /tmp/ccGY9WWs.s page 8
  408. 400 000e 50E0 ldi r21,0
  409. 401 0010 BE01 movw r22,r28
  410. 402 0012 6F5F subi r22,-1
  411. 403 0014 7F4F sbci r23,-1
  412. 404 0016 0E94 0000 call _write
  413. 405 001a 21E0 ldi r18,lo8(1)
  414. 406 001c 30E0 ldi r19,0
  415. 407 001e 0197 sbiw r24,1
  416. 408 0020 01F4 brne .L36
  417. 409 0022 20E0 ldi r18,0
  418. 410 0024 30E0 ldi r19,0
  419. 411 .L36:
  420. 412 0026 8827 clr r24
  421. 413 0028 9927 clr r25
  422. 414 002a 821B sub r24,r18
  423. 415 002c 930B sbc r25,r19
  424. 416 /* epilogue start */
  425. 417 002e 0F90 pop __tmp_reg__
  426. 418 0030 DF91 pop r29
  427. 419 0032 CF91 pop r28
  428. 420 0034 0895 ret
  429. 421 .size PppHdlcSendByte.isra.0, .-PppHdlcSendByte.isra.0
  430. 422 .section .text.PppHdlcSend,"ax",@progbits
  431. 423 .type PppHdlcSend, @function
  432. 424 PppHdlcSend:
  433. 425 0000 6F92 push r6
  434. 426 0002 7F92 push r7
  435. 427 0004 8F92 push r8
  436. 428 0006 9F92 push r9
  437. 429 0008 AF92 push r10
  438. 430 000a BF92 push r11
  439. 431 000c CF92 push r12
  440. 432 000e DF92 push r13
  441. 433 0010 EF92 push r14
  442. 434 0012 FF92 push r15
  443. 435 0014 0F93 push r16
  444. 436 0016 1F93 push r17
  445. 437 0018 CF93 push r28
  446. 438 001a DF93 push r29
  447. 439 001c 1F92 push __zero_reg__
  448. 440 001e CDB7 in r28,__SP_L__
  449. 441 0020 DEB7 in r29,__SP_H__
  450. 442 /* prologue: function */
  451. 443 /* frame size = 1 */
  452. 444 /* stack size = 15 */
  453. 445 .L__stack_usage = 15
  454. 446 0022 5C01 movw r10,r24
  455. 447 0024 7B01 movw r14,r22
  456. 448 0026 6901 movw r12,r18
  457. 449 0028 2115 cp r18,__zero_reg__
  458. 450 002a 3105 cpc r19,__zero_reg__
  459. 451 002c 01F0 breq .L49
  460. 452 002e F901 movw r30,r18
  461. 453 0030 0081 ld r16,Z
  462. 454 0032 1181 ldd r17,Z+1
  463. 455 0034 00C0 rjmp .L38
  464. 456 .L49:
  465. GAS LISTING /tmp/ccGY9WWs.s page 9
  466. 457 0036 00E0 ldi r16,0
  467. 458 0038 10E0 ldi r17,0
  468. 459 .L38:
  469. 460 003a 4701 movw r8,r14
  470. 461 003c 840E add r8,r20
  471. 462 003e 951E adc r9,r21
  472. 463 0040 3DE7 ldi r19,lo8(125)
  473. 464 0042 732E mov r7,r19
  474. 465 0044 40E2 ldi r20,lo8(32)
  475. 466 0046 642E mov r6,r20
  476. 467 .L39:
  477. 468 0048 E814 cp r14,r8
  478. 469 004a F904 cpc r15,r9
  479. 470 004c 01F4 brne .+2
  480. 471 004e 00C0 rjmp .L54
  481. 472 0050 F701 movw r30,r14
  482. 473 0052 6081 ld r22,Z
  483. 474 0054 812F mov r24,r17
  484. 475 0056 9927 clr r25
  485. 476 0058 F801 movw r30,r16
  486. 477 005a FF27 clr r31
  487. 478 005c E627 eor r30,r22
  488. 479 005e EE0F lsl r30
  489. 480 0060 FF1F rol r31
  490. 481 0062 E050 subi r30,lo8(-(fcstab))
  491. 482 0064 F040 sbci r31,hi8(-(fcstab))
  492. 483 0066 0081 ld r16,Z
  493. 484 0068 1181 ldd r17,Z+1
  494. 485 006a 0827 eor r16,r24
  495. 486 006c 1927 eor r17,r25
  496. 487 006e F501 movw r30,r10
  497. 488 0070 8081 ld r24,Z
  498. 489 0072 9181 ldd r25,Z+1
  499. 490 0074 6032 cpi r22,lo8(32)
  500. 491 0076 00F4 brsh .L40
  501. 492 0078 2085 ldd r18,Z+8
  502. 493 007a 3185 ldd r19,Z+9
  503. 494 007c 4285 ldd r20,Z+10
  504. 495 007e 5385 ldd r21,Z+11
  505. 496 0080 062E mov r0,r22
  506. 497 0082 00C0 rjmp 2f
  507. 498 1:
  508. 499 0084 5695 lsr r21
  509. 500 0086 4795 ror r20
  510. 501 0088 3795 ror r19
  511. 502 008a 2795 ror r18
  512. 503 2:
  513. 504 008c 0A94 dec r0
  514. 505 008e 02F4 brpl 1b
  515. 506 0090 20FD sbrc r18,0
  516. 507 0092 00C0 rjmp .L41
  517. 508 0094 00C0 rjmp .L42
  518. 509 .L40:
  519. 510 0096 6E37 cpi r22,lo8(126)
  520. 511 0098 01F0 breq .L41
  521. 512 009a 6D37 cpi r22,lo8(125)
  522. 513 009c 01F4 brne .L42
  523. GAS LISTING /tmp/ccGY9WWs.s page 10
  524. 514 .L41:
  525. 515 009e 7982 std Y+1,r7
  526. 516 00a0 6DE7 ldi r22,lo8(125)
  527. 517 00a2 0E94 0000 call PppHdlcSendByte.isra.0
  528. 518 00a6 892B or r24,r25
  529. 519 00a8 01F0 breq .L43
  530. 520 .L46:
  531. 521 00aa 8FEF ldi r24,lo8(-1)
  532. 522 00ac 9FEF ldi r25,lo8(-1)
  533. 523 00ae 00C0 rjmp .L44
  534. 524 .L43:
  535. 525 00b0 F701 movw r30,r14
  536. 526 00b2 6081 ld r22,Z
  537. 527 00b4 6625 eor r22,r6
  538. 528 00b6 F501 movw r30,r10
  539. 529 00b8 8081 ld r24,Z
  540. 530 00ba 9181 ldd r25,Z+1
  541. 531 00bc 0E94 0000 call PppHdlcSendByte.isra.0
  542. 532 00c0 892B or r24,r25
  543. 533 00c2 01F4 brne .L45
  544. 534 .L47:
  545. 535 00c4 FFEF ldi r31,-1
  546. 536 00c6 EF1A sub r14,r31
  547. 537 00c8 FF0A sbc r15,r31
  548. 538 00ca 00C0 rjmp .L39
  549. 539 .L45:
  550. 540 00cc 41E0 ldi r20,lo8(1)
  551. 541 00ce 50E0 ldi r21,0
  552. 542 00d0 BE01 movw r22,r28
  553. 543 00d2 6F5F subi r22,-1
  554. 544 00d4 7F4F sbci r23,-1
  555. 545 00d6 F501 movw r30,r10
  556. 546 00d8 8081 ld r24,Z
  557. 547 00da 9181 ldd r25,Z+1
  558. 548 00dc 0E94 0000 call _write
  559. 549 00e0 0197 sbiw r24,1
  560. 550 00e2 01F0 breq .L47
  561. 551 00e4 00C0 rjmp .L46
  562. 552 .L42:
  563. 553 00e6 0E94 0000 call PppHdlcSendByte.isra.0
  564. 554 00ea 892B or r24,r25
  565. 555 00ec 01F0 breq .L47
  566. 556 00ee 00C0 rjmp .L46
  567. 557 .L54:
  568. 558 00f0 C114 cp r12,__zero_reg__
  569. 559 00f2 D104 cpc r13,__zero_reg__
  570. 560 00f4 01F0 breq .L50
  571. 561 00f6 F601 movw r30,r12
  572. 562 00f8 1183 std Z+1,r17
  573. 563 00fa 0083 st Z,r16
  574. 564 .L50:
  575. 565 00fc 80E0 ldi r24,0
  576. 566 00fe 90E0 ldi r25,0
  577. 567 .L44:
  578. 568 /* epilogue start */
  579. 569 0100 0F90 pop __tmp_reg__
  580. 570 0102 DF91 pop r29
  581. GAS LISTING /tmp/ccGY9WWs.s page 11
  582. 571 0104 CF91 pop r28
  583. 572 0106 1F91 pop r17
  584. 573 0108 0F91 pop r16
  585. 574 010a FF90 pop r15
  586. 575 010c EF90 pop r14
  587. 576 010e DF90 pop r13
  588. 577 0110 CF90 pop r12
  589. 578 0112 BF90 pop r11
  590. 579 0114 AF90 pop r10
  591. 580 0116 9F90 pop r9
  592. 581 0118 8F90 pop r8
  593. 582 011a 7F90 pop r7
  594. 583 011c 6F90 pop r6
  595. 584 011e 0895 ret
  596. 585 .size PppHdlcSend, .-PppHdlcSend
  597. 586 .section .text.PppHdlcOutput,"ax",@progbits
  598. 587 .type PppHdlcOutput, @function
  599. 588 PppHdlcOutput:
  600. 589 0000 EF92 push r14
  601. 590 0002 FF92 push r15
  602. 591 0004 0F93 push r16
  603. 592 0006 1F93 push r17
  604. 593 0008 CF93 push r28
  605. 594 000a DF93 push r29
  606. 595 000c 1F92 push __zero_reg__
  607. 596 000e 1F92 push __zero_reg__
  608. 597 0010 CDB7 in r28,__SP_L__
  609. 598 0012 DEB7 in r29,__SP_H__
  610. 599 /* prologue: function */
  611. 600 /* frame size = 2 */
  612. 601 /* stack size = 8 */
  613. 602 .L__stack_usage = 8
  614. 603 0014 8B01 movw r16,r22
  615. 604 0016 FC01 movw r30,r24
  616. 605 0018 E188 ldd r14,Z+17
  617. 606 001a F288 ldd r15,Z+18
  618. 607 001c FB01 movw r30,r22
  619. 608 001e 2581 ldd r18,Z+5
  620. 609 0020 3681 ldd r19,Z+6
  621. 610 0022 8185 ldd r24,Z+9
  622. 611 0024 9285 ldd r25,Z+10
  623. 612 0026 820F add r24,r18
  624. 613 0028 931F adc r25,r19
  625. 614 002a 2585 ldd r18,Z+13
  626. 615 002c 3685 ldd r19,Z+14
  627. 616 002e 820F add r24,r18
  628. 617 0030 931F adc r25,r19
  629. 618 0032 2189 ldd r18,Z+17
  630. 619 0034 3289 ldd r19,Z+18
  631. 620 0036 820F add r24,r18
  632. 621 0038 931F adc r25,r19
  633. 622 003a F701 movw r30,r14
  634. 623 003c 2485 ldd r18,Z+12
  635. 624 003e 3585 ldd r19,Z+13
  636. 625 0040 2817 cp r18,r24
  637. 626 0042 3907 cpc r19,r25
  638. 627 0044 00F4 brsh .L56
  639. GAS LISTING /tmp/ccGY9WWs.s page 12
  640. 628 .L58:
  641. 629 0046 0FEF ldi r16,lo8(-1)
  642. 630 0048 1FEF ldi r17,lo8(-1)
  643. 631 004a 00C0 rjmp .L57
  644. 632 .L56:
  645. 633 004c 6EE7 ldi r22,lo8(126)
  646. 634 004e F701 movw r30,r14
  647. 635 0050 8081 ld r24,Z
  648. 636 0052 9181 ldd r25,Z+1
  649. 637 0054 0E94 0000 call PppHdlcSendByte.isra.0
  650. 638 0058 8FEF ldi r24,lo8(-1)
  651. 639 005a 9FEF ldi r25,lo8(-1)
  652. 640 005c 9A83 std Y+2,r25
  653. 641 005e 8983 std Y+1,r24
  654. 642 0060 F801 movw r30,r16
  655. 643 0062 4581 ldd r20,Z+5
  656. 644 0064 5681 ldd r21,Z+6
  657. 645 0066 6381 ldd r22,Z+3
  658. 646 0068 7481 ldd r23,Z+4
  659. 647 006a 9E01 movw r18,r28
  660. 648 006c 2F5F subi r18,-1
  661. 649 006e 3F4F sbci r19,-1
  662. 650 0070 C701 movw r24,r14
  663. 651 0072 0E94 0000 call PppHdlcSend
  664. 652 0076 892B or r24,r25
  665. 653 0078 01F4 brne .L58
  666. 654 007a F801 movw r30,r16
  667. 655 007c 4185 ldd r20,Z+9
  668. 656 007e 5285 ldd r21,Z+10
  669. 657 0080 6781 ldd r22,Z+7
  670. 658 0082 7085 ldd r23,Z+8
  671. 659 0084 9E01 movw r18,r28
  672. 660 0086 2F5F subi r18,-1
  673. 661 0088 3F4F sbci r19,-1
  674. 662 008a C701 movw r24,r14
  675. 663 008c 0E94 0000 call PppHdlcSend
  676. 664 0090 892B or r24,r25
  677. 665 0092 01F4 brne .L58
  678. 666 0094 F801 movw r30,r16
  679. 667 0096 4585 ldd r20,Z+13
  680. 668 0098 5685 ldd r21,Z+14
  681. 669 009a 6385 ldd r22,Z+11
  682. 670 009c 7485 ldd r23,Z+12
  683. 671 009e 9E01 movw r18,r28
  684. 672 00a0 2F5F subi r18,-1
  685. 673 00a2 3F4F sbci r19,-1
  686. 674 00a4 C701 movw r24,r14
  687. 675 00a6 0E94 0000 call PppHdlcSend
  688. 676 00aa 892B or r24,r25
  689. 677 00ac 01F4 brne .L58
  690. 678 00ae F801 movw r30,r16
  691. 679 00b0 4189 ldd r20,Z+17
  692. 680 00b2 5289 ldd r21,Z+18
  693. 681 00b4 6785 ldd r22,Z+15
  694. 682 00b6 7089 ldd r23,Z+16
  695. 683 00b8 9E01 movw r18,r28
  696. 684 00ba 2F5F subi r18,-1
  697. GAS LISTING /tmp/ccGY9WWs.s page 13
  698. 685 00bc 3F4F sbci r19,-1
  699. 686 00be C701 movw r24,r14
  700. 687 00c0 0E94 0000 call PppHdlcSend
  701. 688 00c4 892B or r24,r25
  702. 689 00c6 01F0 breq .+2
  703. 690 00c8 00C0 rjmp .L58
  704. 691 00ca 8981 ldd r24,Y+1
  705. 692 00cc 9A81 ldd r25,Y+2
  706. 693 00ce 8095 com r24
  707. 694 00d0 9095 com r25
  708. 695 00d2 9A83 std Y+2,r25
  709. 696 00d4 8983 std Y+1,r24
  710. 697 00d6 20E0 ldi r18,0
  711. 698 00d8 30E0 ldi r19,0
  712. 699 00da 42E0 ldi r20,lo8(2)
  713. 700 00dc 50E0 ldi r21,0
  714. 701 00de BE01 movw r22,r28
  715. 702 00e0 6F5F subi r22,-1
  716. 703 00e2 7F4F sbci r23,-1
  717. 704 00e4 C701 movw r24,r14
  718. 705 00e6 0E94 0000 call PppHdlcSend
  719. 706 00ea 8C01 movw r16,r24
  720. 707 00ec 892B or r24,r25
  721. 708 00ee 01F0 breq .+2
  722. 709 00f0 00C0 rjmp .L58
  723. 710 00f2 6EE7 ldi r22,lo8(126)
  724. 711 00f4 F701 movw r30,r14
  725. 712 00f6 8081 ld r24,Z
  726. 713 00f8 9181 ldd r25,Z+1
  727. 714 00fa 0E94 0000 call PppHdlcSendByte.isra.0
  728. 715 .L57:
  729. 716 00fe C801 movw r24,r16
  730. 717 /* epilogue start */
  731. 718 0100 0F90 pop __tmp_reg__
  732. 719 0102 0F90 pop __tmp_reg__
  733. 720 0104 DF91 pop r29
  734. 721 0106 CF91 pop r28
  735. 722 0108 1F91 pop r17
  736. 723 010a 0F91 pop r16
  737. 724 010c FF90 pop r15
  738. 725 010e EF90 pop r14
  739. 726 0110 0895 ret
  740. 727 .size PppHdlcOutput, .-PppHdlcOutput
  741. 728 .section .rodata.str1.1,"aMS",@progbits,1
  742. 729 .LC0:
  743. 730 0000 7070 7068 .string "ppphdlc"
  744. 730 646C 6300
  745. 731 .section .text.PppHdlcIoCtl,"ax",@progbits
  746. 732 .type PppHdlcIoCtl, @function
  747. 733 PppHdlcIoCtl:
  748. 734 0000 CF93 push r28
  749. 735 0002 DF93 push r29
  750. 736 /* prologue: function */
  751. 737 /* frame size = 0 */
  752. 738 /* stack size = 2 */
  753. 739 .L__stack_usage = 2
  754. 740 0004 FC01 movw r30,r24
  755. GAS LISTING /tmp/ccGY9WWs.s page 14
  756. 741 0006 C189 ldd r28,Z+17
  757. 742 0008 D289 ldd r29,Z+18
  758. 743 000a 6831 cpi r22,24
  759. 744 000c 81E0 ldi r24,1
  760. 745 000e 7807 cpc r23,r24
  761. 746 0010 01F4 brne .+2
  762. 747 0012 00C0 rjmp .L61
  763. 748 0014 04F4 brge .L62
  764. 749 0016 6731 cpi r22,23
  765. 750 0018 B1E0 ldi r27,1
  766. 751 001a 7B07 cpc r23,r27
  767. 752 001c 01F0 breq .L63
  768. 753 001e 00C0 rjmp .L60
  769. 754 .L62:
  770. 755 0020 6E32 cpi r22,46
  771. 756 0022 E1E0 ldi r30,1
  772. 757 0024 7E07 cpc r23,r30
  773. 758 0026 01F0 breq .L64
  774. 759 0028 6F32 cpi r22,47
  775. 760 002a F1E0 ldi r31,1
  776. 761 002c 7F07 cpc r23,r31
  777. 762 002e 01F0 breq .+2
  778. 763 0030 00C0 rjmp .L60
  779. 764 0032 8885 ldd r24,Y+8
  780. 765 0034 9985 ldd r25,Y+9
  781. 766 0036 AA85 ldd r26,Y+10
  782. 767 0038 BB85 ldd r27,Y+11
  783. 768 003a FA01 movw r30,r20
  784. 769 003c 8083 st Z,r24
  785. 770 003e 9183 std Z+1,r25
  786. 771 0040 A283 std Z+2,r26
  787. 772 0042 B383 std Z+3,r27
  788. 773 0044 00C0 rjmp .L71
  789. 774 .L63:
  790. 775 0046 DA01 movw r26,r20
  791. 776 0048 2D91 ld r18,X+
  792. 777 004a 3C91 ld r19,X
  793. 778 004c 8785 ldd r24,Z+15
  794. 779 004e 9089 ldd r25,Z+16
  795. 780 0050 2115 cp r18,__zero_reg__
  796. 781 0052 3105 cpc r19,__zero_reg__
  797. 782 0054 01F0 breq .L66
  798. 783 0056 892B or r24,r25
  799. 784 0058 01F0 breq .L67
  800. 785 .L69:
  801. 786 005a 8FEF ldi r24,lo8(-1)
  802. 787 005c 9FEF ldi r25,lo8(-1)
  803. 788 005e 00C0 rjmp .L68
  804. 789 .L67:
  805. 790 0060 308B std Z+16,r19
  806. 791 0062 2787 std Z+15,r18
  807. 792 0064 20E0 ldi r18,0
  808. 793 0066 34E0 ldi r19,lo8(4)
  809. 794 0068 AF01 movw r20,r30
  810. 795 006a 60E0 ldi r22,lo8(gs(PppHdlcReceive))
  811. 796 006c 70E0 ldi r23,hi8(gs(PppHdlcReceive))
  812. 797 006e 80E0 ldi r24,lo8(.LC0)
  813. GAS LISTING /tmp/ccGY9WWs.s page 15
  814. 798 0070 90E0 ldi r25,hi8(.LC0)
  815. 799 0072 0E94 0000 call NutThreadCreate
  816. 800 0076 892B or r24,r25
  817. 801 0078 01F4 brne .L70
  818. 802 007a 00C0 rjmp .L69
  819. 803 .L66:
  820. 804 007c 892B or r24,r25
  821. 805 007e 01F0 breq .L71
  822. 806 0080 108A std Z+16,__zero_reg__
  823. 807 0082 1786 std Z+15,__zero_reg__
  824. 808 .L70:
  825. 809 0084 40ED ldi r20,lo8(-48)
  826. 810 0086 57E0 ldi r21,lo8(7)
  827. 811 0088 60E0 ldi r22,0
  828. 812 008a 70E0 ldi r23,0
  829. 813 008c CE01 movw r24,r28
  830. 814 008e 0296 adiw r24,2
  831. 815 /* epilogue start */
  832. 816 0090 DF91 pop r29
  833. 817 0092 CF91 pop r28
  834. 818 0094 0C94 0000 jmp NutEventWait
  835. 819 .L61:
  836. 820 0098 8785 ldd r24,Z+15
  837. 821 009a 9089 ldd r25,Z+16
  838. 822 009c FA01 movw r30,r20
  839. 823 009e 9183 std Z+1,r25
  840. 824 00a0 8083 st Z,r24
  841. 825 00a2 00C0 rjmp .L71
  842. 826 .L64:
  843. 827 00a4 FA01 movw r30,r20
  844. 828 00a6 8081 ld r24,Z
  845. 829 00a8 9181 ldd r25,Z+1
  846. 830 00aa A281 ldd r26,Z+2
  847. 831 00ac B381 ldd r27,Z+3
  848. 832 00ae 8887 std Y+8,r24
  849. 833 00b0 9987 std Y+9,r25
  850. 834 00b2 AA87 std Y+10,r26
  851. 835 00b4 BB87 std Y+11,r27
  852. 836 00b6 00C0 rjmp .L71
  853. 837 .L60:
  854. 838 00b8 8881 ld r24,Y
  855. 839 00ba 9981 ldd r25,Y+1
  856. 840 /* epilogue start */
  857. 841 00bc DF91 pop r29
  858. 842 00be CF91 pop r28
  859. 843 00c0 0C94 0000 jmp _ioctl
  860. 844 .L71:
  861. 845 00c4 80E0 ldi r24,0
  862. 846 00c6 90E0 ldi r25,0
  863. 847 .L68:
  864. 848 /* epilogue start */
  865. 849 00c8 DF91 pop r29
  866. 850 00ca CF91 pop r28
  867. 851 00cc 0895 ret
  868. 852 .size PppHdlcIoCtl, .-PppHdlcIoCtl
  869. 853 .section .text.PppHdlcClose,"ax",@progbits
  870. 854 .type PppHdlcClose, @function
  871. GAS LISTING /tmp/ccGY9WWs.s page 16
  872. 855 PppHdlcClose:
  873. 856 0000 0F93 push r16
  874. 857 0002 1F93 push r17
  875. 858 0004 CF93 push r28
  876. 859 0006 DF93 push r29
  877. 860 /* prologue: function */
  878. 861 /* frame size = 0 */
  879. 862 /* stack size = 4 */
  880. 863 .L__stack_usage = 4
  881. 864 0008 EC01 movw r28,r24
  882. 865 000a E881 ld r30,Y
  883. 866 000c F981 ldd r31,Y+1
  884. 867 000e 8189 ldd r24,Z+17
  885. 868 0010 9289 ldd r25,Z+18
  886. 869 0012 2785 ldd r18,Z+15
  887. 870 0014 3089 ldd r19,Z+16
  888. 871 0016 232B or r18,r19
  889. 872 0018 01F0 breq .L76
  890. 873 001a 108A std Z+16,__zero_reg__
  891. 874 001c 1786 std Z+15,__zero_reg__
  892. 875 001e 40ED ldi r20,lo8(-48)
  893. 876 0020 57E0 ldi r21,lo8(7)
  894. 877 0022 60E0 ldi r22,0
  895. 878 0024 70E0 ldi r23,0
  896. 879 0026 0296 adiw r24,2
  897. 880 0028 0E94 0000 call NutEventWait
  898. 881 .L76:
  899. 882 002c E881 ld r30,Y
  900. 883 002e F981 ldd r31,Y+1
  901. 884 0030 0188 ldd __tmp_reg__,Z+17
  902. 885 0032 F289 ldd r31,Z+18
  903. 886 0034 E02D mov r30,__tmp_reg__
  904. 887 0036 8081 ld r24,Z
  905. 888 0038 9181 ldd r25,Z+1
  906. 889 003a 0E94 0000 call _close
  907. 890 003e 8C01 movw r16,r24
  908. 891 0040 CE01 movw r24,r28
  909. 892 0042 0E94 0000 call free
  910. 893 0046 C801 movw r24,r16
  911. 894 /* epilogue start */
  912. 895 0048 DF91 pop r29
  913. 896 004a CF91 pop r28
  914. 897 004c 1F91 pop r17
  915. 898 004e 0F91 pop r16
  916. 899 0050 0895 ret
  917. 900 .size PppHdlcClose, .-PppHdlcClose
  918. 901 .global devPppHdlc1
  919. 902 .data
  920. 903 .type devPppHdlc1, @object
  921. 904 .size devPppHdlc1, 37
  922. 905 devPppHdlc1:
  923. 906 0000 0000 .word 0
  924. 907 0002 6C .byte 108
  925. 908 0003 75 .byte 117
  926. 909 0004 61 .byte 97
  927. 910 0005 72 .byte 114
  928. 911 0006 74 .byte 116
  929. GAS LISTING /tmp/ccGY9WWs.s page 17
  930. 912 0007 31 .byte 49
  931. 913 0008 00 .byte 0
  932. 914 0009 00 .byte 0
  933. 915 000a 00 .byte 0
  934. 916 000b 05 .byte 5
  935. 917 000c 0000 .word 0
  936. 918 000e 00 .byte 0
  937. 919 000f 0000 .word 0
  938. 920 0011 0000 .word dcb_ppp1
  939. 921 0013 0000 .word gs(PppHdlcInit)
  940. 922 0015 0000 .word gs(PppHdlcIoCtl)
  941. 923 0017 0000 .word gs(PppHdlcRead)
  942. 924 0019 0000 .word gs(PppHdlcWrite)
  943. 925 001b 0000 .word 0
  944. 926 001d 0000 .word gs(PppHdlcOpen)
  945. 927 001f 0000 .word gs(PppHdlcClose)
  946. 928 0021 0000 .word 0
  947. 929 0023 0000 .word 0
  948. 930 .global devPppHdlc0
  949. 931 .type devPppHdlc0, @object
  950. 932 .size devPppHdlc0, 37
  951. 933 devPppHdlc0:
  952. 934 0025 0000 .word 0
  953. 935 0027 6C .byte 108
  954. 936 0028 75 .byte 117
  955. 937 0029 61 .byte 97
  956. 938 002a 72 .byte 114
  957. 939 002b 74 .byte 116
  958. 940 002c 30 .byte 48
  959. 941 002d 00 .byte 0
  960. 942 002e 00 .byte 0
  961. 943 002f 00 .byte 0
  962. 944 0030 05 .byte 5
  963. 945 0031 0000 .word 0
  964. 946 0033 00 .byte 0
  965. 947 0034 0000 .word 0
  966. 948 0036 0000 .word dcb_ppp0
  967. 949 0038 0000 .word gs(PppHdlcInit)
  968. 950 003a 0000 .word gs(PppHdlcIoCtl)
  969. 951 003c 0000 .word gs(PppHdlcRead)
  970. 952 003e 0000 .word gs(PppHdlcWrite)
  971. 953 0040 0000 .word 0
  972. 954 0042 0000 .word gs(PppHdlcOpen)
  973. 955 0044 0000 .word gs(PppHdlcClose)
  974. 956 0046 0000 .word 0
  975. 957 0048 0000 .word 0
  976. 958 .local dcb_ppp1
  977. 959 .comm dcb_ppp1,14,1
  978. 960 .local dcb_ppp0
  979. 961 .comm dcb_ppp0,14,1
  980. 962 .section .rodata
  981. 963 .type fcstab, @object
  982. 964 .size fcstab, 512
  983. 965 fcstab:
  984. 966 0000 0000 .word 0
  985. 967 0002 8911 .word 4489
  986. 968 0004 1223 .word 8978
  987. GAS LISTING /tmp/ccGY9WWs.s page 18
  988. 969 0006 9B32 .word 12955
  989. 970 0008 2446 .word 17956
  990. 971 000a AD57 .word 22445
  991. 972 000c 3665 .word 25910
  992. 973 000e BF74 .word 29887
  993. 974 0010 488C .word -29624
  994. 975 0012 C19D .word -25151
  995. 976 0014 5AAF .word -20646
  996. 977 0016 D3BE .word -16685
  997. 978 0018 6CCA .word -13716
  998. 979 001a E5DB .word -9243
  999. 980 001c 7EE9 .word -5762
  1000. 981 001e F7F8 .word -1801
  1001. 982 0020 8110 .word 4225
  1002. 983 0022 0801 .word 264
  1003. 984 0024 9333 .word 13203
  1004. 985 0026 1A22 .word 8730
  1005. 986 0028 A556 .word 22181
  1006. 987 002a 2C47 .word 18220
  1007. 988 002c B775 .word 30135
  1008. 989 002e 3E64 .word 25662
  1009. 990 0030 C99C .word -25399
  1010. 991 0032 408D .word -29376
  1011. 992 0034 DBBF .word -16421
  1012. 993 0036 52AE .word -20910
  1013. 994 0038 EDDA .word -9491
  1014. 995 003a 64CB .word -13468
  1015. 996 003c FFF9 .word -1537
  1016. 997 003e 76E8 .word -6026
  1017. 998 0040 0221 .word 8450
  1018. 999 0042 8B30 .word 12427
  1019. 1000 0044 1002 .word 528
  1020. 1001 0046 9913 .word 5017
  1021. 1002 0048 2667 .word 26406
  1022. 1003 004a AF76 .word 30383
  1023. 1004 004c 3444 .word 17460
  1024. 1005 004e BD55 .word 21949
  1025. 1006 0050 4AAD .word -21174
  1026. 1007 0052 C3BC .word -17213
  1027. 1008 0054 588E .word -29096
  1028. 1009 0056 D19F .word -24623
  1029. 1010 0058 6EEB .word -5266
  1030. 1011 005a E7FA .word -1305
  1031. 1012 005c 7CC8 .word -14212
  1032. 1013 005e F5D9 .word -9739
  1033. 1014 0060 8331 .word 12675
  1034. 1015 0062 0A20 .word 8202
  1035. 1016 0064 9112 .word 4753
  1036. 1017 0066 1803 .word 792
  1037. 1018 0068 A777 .word 30631
  1038. 1019 006a 2E66 .word 26158
  1039. 1020 006c B554 .word 21685
  1040. 1021 006e 3C45 .word 17724
  1041. 1022 0070 CBBD .word -16949
  1042. 1023 0072 42AC .word -21438
  1043. 1024 0074 D99E .word -24871
  1044. 1025 0076 508F .word -28848
  1045. GAS LISTING /tmp/ccGY9WWs.s page 19
  1046. 1026 0078 EFFB .word -1041
  1047. 1027 007a 66EA .word -5530
  1048. 1028 007c FDD8 .word -9987
  1049. 1029 007e 74C9 .word -13964
  1050. 1030 0080 0442 .word 16900
  1051. 1031 0082 8D53 .word 21389
  1052. 1032 0084 1661 .word 24854
  1053. 1033 0086 9F70 .word 28831
  1054. 1034 0088 2004 .word 1056
  1055. 1035 008a A915 .word 5545
  1056. 1036 008c 3227 .word 10034
  1057. 1037 008e BB36 .word 14011
  1058. 1038 0090 4CCE .word -12724
  1059. 1039 0092 C5DF .word -8251
  1060. 1040 0094 5EED .word -4770
  1061. 1041 0096 D7FC .word -809
  1062. 1042 0098 6888 .word -30616
  1063. 1043 009a E199 .word -26143
  1064. 1044 009c 7AAB .word -21638
  1065. 1045 009e F3BA .word -17677
  1066. 1046 00a0 8552 .word 21125
  1067. 1047 00a2 0C43 .word 17164
  1068. 1048 00a4 9771 .word 29079
  1069. 1049 00a6 1E60 .word 24606
  1070. 1050 00a8 A114 .word 5281
  1071. 1051 00aa 2805 .word 1320
  1072. 1052 00ac B337 .word 14259
  1073. 1053 00ae 3A26 .word 9786
  1074. 1054 00b0 CDDE .word -8499
  1075. 1055 00b2 44CF .word -12476
  1076. 1056 00b4 DFFD .word -545
  1077. 1057 00b6 56EC .word -5034
  1078. 1058 00b8 E998 .word -26391
  1079. 1059 00ba 6089 .word -30368
  1080. 1060 00bc FBBB .word -17413
  1081. 1061 00be 72AA .word -21902
  1082. 1062 00c0 0663 .word 25350
  1083. 1063 00c2 8F72 .word 29327
  1084. 1064 00c4 1440 .word 16404
  1085. 1065 00c6 9D51 .word 20893
  1086. 1066 00c8 2225 .word 9506
  1087. 1067 00ca AB34 .word 13483
  1088. 1068 00cc 3006 .word 1584
  1089. 1069 00ce B917 .word 6073
  1090. 1070 00d0 4EEF .word -4274
  1091. 1071 00d2 C7FE .word -313
  1092. 1072 00d4 5CCC .word -13220
  1093. 1073 00d6 D5DD .word -8747
  1094. 1074 00d8 6AA9 .word -22166
  1095. 1075 00da E3B8 .word -18205
  1096. 1076 00dc 788A .word -30088
  1097. 1077 00de F19B .word -25615
  1098. 1078 00e0 8773 .word 29575
  1099. 1079 00e2 0E62 .word 25102
  1100. 1080 00e4 9550 .word 20629
  1101. 1081 00e6 1C41 .word 16668
  1102. 1082 00e8 A335 .word 13731
  1103. GAS LISTING /tmp/ccGY9WWs.s page 20
  1104. 1083 00ea 2A24 .word 9258
  1105. 1084 00ec B116 .word 5809
  1106. 1085 00ee 3807 .word 1848
  1107. 1086 00f0 CFFF .word -49
  1108. 1087 00f2 46EE .word -4538
  1109. 1088 00f4 DDDC .word -8995
  1110. 1089 00f6 54CD .word -12972
  1111. 1090 00f8 EBB9 .word -17941
  1112. 1091 00fa 62A8 .word -22430
  1113. 1092 00fc F99A .word -25863
  1114. 1093 00fe 708B .word -29840
  1115. 1094 0100 0884 .word -31736
  1116. 1095 0102 8195 .word -27263
  1117. 1096 0104 1AA7 .word -22758
  1118. 1097 0106 93B6 .word -18797
  1119. 1098 0108 2CC2 .word -15828
  1120. 1099 010a A5D3 .word -11355
  1121. 1100 010c 3EE1 .word -7874
  1122. 1101 010e B7F0 .word -3913
  1123. 1102 0110 4008 .word 2112
  1124. 1103 0112 C919 .word 6601
  1125. 1104 0114 522B .word 11090
  1126. 1105 0116 DB3A .word 15067
  1127. 1106 0118 644E .word 20068
  1128. 1107 011a ED5F .word 24557
  1129. 1108 011c 766D .word 28022
  1130. 1109 011e FF7C .word 31999
  1131. 1110 0120 8994 .word -27511
  1132. 1111 0122 0085 .word -31488
  1133. 1112 0124 9BB7 .word -18533
  1134. 1113 0126 12A6 .word -23022
  1135. 1114 0128 ADD2 .word -11603
  1136. 1115 012a 24C3 .word -15580
  1137. 1116 012c BFF1 .word -3649
  1138. 1117 012e 36E0 .word -8138
  1139. 1118 0130 C118 .word 6337
  1140. 1119 0132 4809 .word 2376
  1141. 1120 0134 D33B .word 15315
  1142. 1121 0136 5A2A .word 10842
  1143. 1122 0138 E55E .word 24293
  1144. 1123 013a 6C4F .word 20332
  1145. 1124 013c F77D .word 32247
  1146. 1125 013e 7E6C .word 27774
  1147. 1126 0140 0AA5 .word -23286
  1148. 1127 0142 83B4 .word -19325
  1149. 1128 0144 1886 .word -31208
  1150. 1129 0146 9197 .word -26735
  1151. 1130 0148 2EE3 .word -7378
  1152. 1131 014a A7F2 .word -3417
  1153. 1132 014c 3CC0 .word -16324
  1154. 1133 014e B5D1 .word -11851
  1155. 1134 0150 4229 .word 10562
  1156. 1135 0152 CB38 .word 14539
  1157. 1136 0154 500A .word 2640
  1158. 1137 0156 D91B .word 7129
  1159. 1138 0158 666F .word 28518
  1160. 1139 015a EF7E .word 32495
  1161. GAS LISTING /tmp/ccGY9WWs.s page 21
  1162. 1140 015c 744C .word 19572
  1163. 1141 015e FD5D .word 24061
  1164. 1142 0160 8BB5 .word -19061
  1165. 1143 0162 02A4 .word -23550
  1166. 1144 0164 9996 .word -26983
  1167. 1145 0166 1087 .word -30960
  1168. 1146 0168 AFF3 .word -3153
  1169. 1147 016a 26E2 .word -7642
  1170. 1148 016c BDD0 .word -12099
  1171. 1149 016e 34C1 .word -16076
  1172. 1150 0170 C339 .word 14787
  1173. 1151 0172 4A28 .word 10314
  1174. 1152 0174 D11A .word 6865
  1175. 1153 0176 580B .word 2904
  1176. 1154 0178 E77F .word 32743
  1177. 1155 017a 6E6E .word 28270
  1178. 1156 017c F55C .word 23797
  1179. 1157 017e 7C4D .word 19836
  1180. 1158 0180 0CC6 .word -14836
  1181. 1159 0182 85D7 .word -10363
  1182. 1160 0184 1EE5 .word -6882
  1183. 1161 0186 97F4 .word -2921
  1184. 1162 0188 2880 .word -32728
  1185. 1163 018a A191 .word -28255
  1186. 1164 018c 3AA3 .word -23750
  1187. 1165 018e B3B2 .word -19789
  1188. 1166 0190 444A .word 19012
  1189. 1167 0192 CD5B .word 23501
  1190. 1168 0194 5669 .word 26966
  1191. 1169 0196 DF78 .word 30943
  1192. 1170 0198 600C .word 3168
  1193. 1171 019a E91D .word 7657
  1194. 1172 019c 722F .word 12146
  1195. 1173 019e FB3E .word 16123
  1196. 1174 01a0 8DD6 .word -10611
  1197. 1175 01a2 04C7 .word -14588
  1198. 1176 01a4 9FF5 .word -2657
  1199. 1177 01a6 16E4 .word -7146
  1200. 1178 01a8 A990 .word -28503
  1201. 1179 01aa 2081 .word -32480
  1202. 1180 01ac BBB3 .word -19525
  1203. 1181 01ae 32A2 .word -24014
  1204. 1182 01b0 C55A .word 23237
  1205. 1183 01b2 4C4B .word 19276
  1206. 1184 01b4 D779 .word 31191
  1207. 1185 01b6 5E68 .word 26718
  1208. 1186 01b8 E11C .word 7393
  1209. 1187 01ba 680D .word 3432
  1210. 1188 01bc F33F .word 16371
  1211. 1189 01be 7A2E .word 11898
  1212. 1190 01c0 0EE7 .word -6386
  1213. 1191 01c2 87F6 .word -2425
  1214. 1192 01c4 1CC4 .word -15332
  1215. 1193 01c6 95D5 .word -10859
  1216. 1194 01c8 2AA1 .word -24278
  1217. 1195 01ca A3B0 .word -20317
  1218. 1196 01cc 3882 .word -32200
  1219. GAS LISTING /tmp/ccGY9WWs.s page 22
  1220. 1197 01ce B193 .word -27727
  1221. 1198 01d0 466B .word 27462
  1222. 1199 01d2 CF7A .word 31439
  1223. 1200 01d4 5448 .word 18516
  1224. 1201 01d6 DD59 .word 23005
  1225. 1202 01d8 622D .word 11618
  1226. 1203 01da EB3C .word 15595
  1227. 1204 01dc 700E .word 3696
  1228. 1205 01de F91F .word 8185
  1229. 1206 01e0 8FF7 .word -2161
  1230. 1207 01e2 06E6 .word -6650
  1231. 1208 01e4 9DD4 .word -11107
  1232. 1209 01e6 14C5 .word -15084
  1233. 1210 01e8 ABB1 .word -20053
  1234. 1211 01ea 22A0 .word -24542
  1235. 1212 01ec B992 .word -27975
  1236. 1213 01ee 3083 .word -31952
  1237. 1214 01f0 C77B .word 31687
  1238. 1215 01f2 4E6A .word 27214
  1239. 1216 01f4 D558 .word 22741
  1240. 1217 01f6 5C49 .word 18780
  1241. 1218 01f8 E33D .word 15843
  1242. 1219 01fa 6A2C .word 11370
  1243. 1220 01fc F11E .word 7921
  1244. 1221 01fe 780F .word 3960
  1245. 1222 .ident "GCC: (GNU) 5.3.0"
  1246. 1223 .global __do_copy_data
  1247. 1224 .global __do_clear_bss
  1248. GAS LISTING /tmp/ccGY9WWs.s page 23
  1249. DEFINED SYMBOLS
  1250. *ABS*:0000000000000000 ppp_hdlc.c
  1251. /tmp/ccGY9WWs.s:2 *ABS*:000000000000003e __SP_H__
  1252. /tmp/ccGY9WWs.s:3 *ABS*:000000000000003d __SP_L__
  1253. /tmp/ccGY9WWs.s:4 *ABS*:000000000000003f __SREG__
  1254. /tmp/ccGY9WWs.s:5 *ABS*:000000000000003b __RAMPZ__
  1255. /tmp/ccGY9WWs.s:6 *ABS*:0000000000000000 __tmp_reg__
  1256. /tmp/ccGY9WWs.s:7 *ABS*:0000000000000001 __zero_reg__
  1257. /tmp/ccGY9WWs.s:10 .text.PppHdlcInit:0000000000000000 PppHdlcInit
  1258. /tmp/ccGY9WWs.s:21 .text.PppHdlcRead:0000000000000000 PppHdlcRead
  1259. /tmp/ccGY9WWs.s:39 .text.PppHdlcReceive:0000000000000000 PppHdlcReceive
  1260. /tmp/ccGY9WWs.s:588 .text.PppHdlcOutput:0000000000000000 PppHdlcOutput
  1261. /tmp/ccGY9WWs.s:965 .rodata:0000000000000000 fcstab
  1262. /tmp/ccGY9WWs.s:318 .text.PppHdlcWrite:0000000000000000 PppHdlcWrite
  1263. /tmp/ccGY9WWs.s:335 .text.PppHdlcOpen:0000000000000000 PppHdlcOpen
  1264. /tmp/ccGY9WWs.s:388 .text.PppHdlcSendByte.isra.0:0000000000000000 PppHdlcSendByte.isra.0
  1265. /tmp/ccGY9WWs.s:424 .text.PppHdlcSend:0000000000000000 PppHdlcSend
  1266. /tmp/ccGY9WWs.s:733 .text.PppHdlcIoCtl:0000000000000000 PppHdlcIoCtl
  1267. /tmp/ccGY9WWs.s:855 .text.PppHdlcClose:0000000000000000 PppHdlcClose
  1268. /tmp/ccGY9WWs.s:905 .data:0000000000000000 devPppHdlc1
  1269. .bss:0000000000000000 dcb_ppp1
  1270. /tmp/ccGY9WWs.s:933 .data:0000000000000025 devPppHdlc0
  1271. /tmp/ccGY9WWs.s:959 .bss:000000000000000e dcb_ppp0
  1272. UNDEFINED SYMBOLS
  1273. _read
  1274. malloc
  1275. _ioctl
  1276. NutEventPost
  1277. NutNetBufAlloc
  1278. memcpy
  1279. NutThreadExit
  1280. _write
  1281. _open
  1282. calloc
  1283. NutThreadCreate
  1284. NutEventWait
  1285. _close
  1286. free
  1287. __do_copy_data
  1288. __do_clear_bss