pppsm.lst 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635
  1. GAS LISTING /tmp/ccO1mtn0.s page 1
  2. 1 .file "pppsm.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.NutPppSm,"ax",@progbits
  10. 9 .global NutPppSm
  11. 10 .type NutPppSm, @function
  12. 11 NutPppSm:
  13. 12 /* prologue: function */
  14. 13 /* frame size = 0 */
  15. 14 /* stack size = 0 */
  16. 15 .L__stack_usage = 0
  17. 16 0000 7C01 movw r14,r24
  18. 17 0002 FC01 movw r30,r24
  19. 18 0004 C189 ldd r28,Z+17
  20. 19 0006 D289 ldd r29,Z+18
  21. 20 0008 03E0 ldi r16,lo8(3)
  22. 21 .L45:
  23. 22 000a 68E8 ldi r22,lo8(-120)
  24. 23 000c 73E1 ldi r23,lo8(19)
  25. 24 000e 80E0 ldi r24,0
  26. 25 0010 90E0 ldi r25,0
  27. 26 0012 0E94 0000 call NutSleep
  28. 27 0016 8091 0000 lds r24,new_magic
  29. 28 001a 9091 0000 lds r25,new_magic+1
  30. 29 001e A091 0000 lds r26,new_magic+2
  31. 30 0022 B091 0000 lds r27,new_magic+3
  32. 31 0026 0196 adiw r24,1
  33. 32 0028 A11D adc r26,__zero_reg__
  34. 33 002a B11D adc r27,__zero_reg__
  35. 34 002c 8093 0000 sts new_magic,r24
  36. 35 0030 9093 0000 sts new_magic+1,r25
  37. 36 0034 A093 0000 sts new_magic+2,r26
  38. 37 0038 B093 0000 sts new_magic+3,r27
  39. 38 003c 19AD ldd r17,Y+57
  40. 39 003e 8A81 ldd r24,Y+2
  41. 40 0040 8630 cpi r24,lo8(6)
  42. 41 0042 01F0 breq .L5
  43. 42 0044 00F4 brsh .L6
  44. 43 0046 8430 cpi r24,lo8(4)
  45. 44 0048 00F4 brsh .L55
  46. 45 004a 00C0 rjmp .L4
  47. 46 .L6:
  48. 47 004c 8830 cpi r24,lo8(8)
  49. 48 004e 01F0 breq .L5
  50. 49 0050 00C0 rjmp .L4
  51. 50 .L55:
  52. 51 0052 1930 cpi r17,lo8(9)
  53. 52 0054 00F4 brsh .L8
  54. 53 0056 1123 tst r17
  55. 54 0058 01F0 breq .L12
  56. 55 005a 20E0 ldi r18,0
  57. 56 005c 30E0 ldi r19,0
  58. 57 005e 4B81 ldd r20,Y+3
  59. GAS LISTING /tmp/ccO1mtn0.s page 2
  60. 58 0060 65E0 ldi r22,lo8(5)
  61. 59 0062 C701 movw r24,r14
  62. 60 0064 0E94 0000 call NutLcpOutput
  63. 61 0068 00C0 rjmp .L12
  64. 62 .L8:
  65. 63 006a 8430 cpi r24,lo8(4)
  66. 64 006c 01F0 breq .L25
  67. 65 006e 83E0 ldi r24,lo8(3)
  68. 66 0070 00C0 rjmp .L10
  69. 67 .L25:
  70. 68 0072 82E0 ldi r24,lo8(2)
  71. 69 .L10:
  72. 70 0074 8A83 std Y+2,r24
  73. 71 0076 00C0 rjmp .L4
  74. 72 .L5:
  75. 73 0078 1930 cpi r17,lo8(9)
  76. 74 007a 00F4 brsh .L11
  77. 75 007c 1123 tst r17
  78. 76 007e 01F0 breq .L12
  79. 77 0080 40E0 ldi r20,0
  80. 78 0082 6B81 ldd r22,Y+3
  81. 79 0084 C701 movw r24,r14
  82. 80 0086 0E94 0000 call LcpTxConfReq
  83. 81 .L12:
  84. 82 008a 81E0 ldi r24,lo8(1)
  85. 83 008c 810F add r24,r17
  86. 84 008e 89AF std Y+57,r24
  87. 85 0090 00C0 rjmp .L4
  88. 86 .L11:
  89. 87 0092 0A83 std Y+2,r16
  90. 88 .L4:
  91. 89 0094 8EAD ldd r24,Y+62
  92. 90 0096 8330 cpi r24,lo8(3)
  93. 91 0098 01F4 brne .L13
  94. 92 009a 1930 cpi r17,lo8(9)
  95. 93 009c 00F4 brsh .L14
  96. 94 009e 1123 tst r17
  97. 95 00a0 01F0 breq .L15
  98. 96 00a2 6B81 ldd r22,Y+3
  99. 97 00a4 C701 movw r24,r14
  100. 98 00a6 0E94 0000 call PapTxAuthReq
  101. 99 .L15:
  102. 100 00aa 81E0 ldi r24,lo8(1)
  103. 101 00ac 810F add r24,r17
  104. 102 00ae 89AF std Y+57,r24
  105. 103 00b0 00C0 rjmp .L13
  106. 104 .L14:
  107. 105 00b2 8A83 std Y+2,r24
  108. 106 .L13:
  109. 107 00b4 8CAD ldd r24,Y+60
  110. 108 00b6 8630 cpi r24,lo8(6)
  111. 109 00b8 01F0 breq .L16
  112. 110 00ba 00F4 brsh .L17
  113. 111 00bc 8430 cpi r24,lo8(4)
  114. 112 00be 00F4 brsh .L56
  115. 113 00c0 00C0 rjmp .L45
  116. 114 .L17:
  117. GAS LISTING /tmp/ccO1mtn0.s page 3
  118. 115 00c2 8830 cpi r24,lo8(8)
  119. 116 00c4 01F0 breq .L16
  120. 117 00c6 00C0 rjmp .L45
  121. 118 .L56:
  122. 119 00c8 1930 cpi r17,lo8(9)
  123. 120 00ca 00F4 brsh .L19
  124. 121 00cc 1123 tst r17
  125. 122 00ce 01F0 breq .L24
  126. 123 00d0 20E0 ldi r18,0
  127. 124 00d2 30E0 ldi r19,0
  128. 125 00d4 4B81 ldd r20,Y+3
  129. 126 00d6 65E0 ldi r22,lo8(5)
  130. 127 00d8 C701 movw r24,r14
  131. 128 00da 0E94 0000 call NutIpcpOutput
  132. 129 00de 00C0 rjmp .L24
  133. 130 .L19:
  134. 131 00e0 8430 cpi r24,lo8(4)
  135. 132 00e2 01F0 breq .L26
  136. 133 00e4 83E0 ldi r24,lo8(3)
  137. 134 00e6 00C0 rjmp .L22
  138. 135 .L26:
  139. 136 00e8 82E0 ldi r24,lo8(2)
  140. 137 .L22:
  141. 138 00ea 8CAF std Y+60,r24
  142. 139 00ec 00C0 rjmp .L45
  143. 140 .L16:
  144. 141 00ee 1930 cpi r17,lo8(9)
  145. 142 00f0 00F4 brsh .L23
  146. 143 00f2 1123 tst r17
  147. 144 00f4 01F0 breq .L24
  148. 145 00f6 6B81 ldd r22,Y+3
  149. 146 00f8 C701 movw r24,r14
  150. 147 00fa 0E94 0000 call IpcpTxConfReq
  151. 148 .L24:
  152. 149 00fe 1F5F subi r17,lo8(-(1))
  153. 150 0100 19AF std Y+57,r17
  154. 151 0102 00C0 rjmp .L45
  155. 152 .L23:
  156. 153 0104 0CAF std Y+60,r16
  157. 154 0106 00C0 rjmp .L45
  158. 155 .size NutPppSm, .-NutPppSm
  159. 156 .section .rodata.str1.1,"aMS",@progbits,1
  160. 157 .LC0:
  161. 158 0000 7070 7073 .string "pppsm"
  162. 158 6D00
  163. 159 .section .text.NutPppInitStateMachine,"ax",@progbits
  164. 160 .global NutPppInitStateMachine
  165. 161 .type NutPppInitStateMachine, @function
  166. 162 NutPppInitStateMachine:
  167. 163 /* prologue: function */
  168. 164 /* frame size = 0 */
  169. 165 /* stack size = 0 */
  170. 166 .L__stack_usage = 0
  171. 167 0000 2091 0000 lds r18,pppThread
  172. 168 0004 3091 0000 lds r19,pppThread+1
  173. 169 0008 232B or r18,r19
  174. 170 000a 01F4 brne .L61
  175. GAS LISTING /tmp/ccO1mtn0.s page 4
  176. 171 000c 20E0 ldi r18,0
  177. 172 000e 32E0 ldi r19,lo8(2)
  178. 173 0010 AC01 movw r20,r24
  179. 174 0012 60E0 ldi r22,lo8(gs(NutPppSm))
  180. 175 0014 70E0 ldi r23,hi8(gs(NutPppSm))
  181. 176 0016 80E0 ldi r24,lo8(.LC0)
  182. 177 0018 90E0 ldi r25,hi8(.LC0)
  183. 178 001a 0E94 0000 call NutThreadCreate
  184. 179 001e 9093 0000 sts pppThread+1,r25
  185. 180 0022 8093 0000 sts pppThread,r24
  186. 181 0026 21E0 ldi r18,lo8(1)
  187. 182 0028 30E0 ldi r19,0
  188. 183 002a 892B or r24,r25
  189. 184 002c 01F0 breq .L60
  190. 185 002e 20E0 ldi r18,0
  191. 186 0030 30E0 ldi r19,0
  192. 187 .L60:
  193. 188 0032 8827 clr r24
  194. 189 0034 9927 clr r25
  195. 190 0036 821B sub r24,r18
  196. 191 0038 930B sbc r25,r19
  197. 192 003a 0895 ret
  198. 193 .L61:
  199. 194 003c 80E0 ldi r24,0
  200. 195 003e 90E0 ldi r25,0
  201. 196 0040 0895 ret
  202. 197 .size NutPppInitStateMachine, .-NutPppInitStateMachine
  203. 198 .section .text.LcpOpen,"ax",@progbits
  204. 199 .global LcpOpen
  205. 200 .type LcpOpen, @function
  206. 201 LcpOpen:
  207. 202 0000 CF93 push r28
  208. 203 0002 DF93 push r29
  209. 204 /* prologue: function */
  210. 205 /* frame size = 0 */
  211. 206 /* stack size = 2 */
  212. 207 .L__stack_usage = 2
  213. 208 0004 FC01 movw r30,r24
  214. 209 0006 C189 ldd r28,Z+17
  215. 210 0008 D289 ldd r29,Z+18
  216. 211 000a 9A81 ldd r25,Y+2
  217. 212 000c 9230 cpi r25,lo8(2)
  218. 213 000e 01F0 breq .L67
  219. 214 0010 9430 cpi r25,lo8(4)
  220. 215 0012 01F0 breq .L68
  221. 216 0014 9111 cpse r25,__zero_reg__
  222. 217 0016 00C0 rjmp .L65
  223. 218 0018 81E0 ldi r24,lo8(1)
  224. 219 001a 00C0 rjmp .L70
  225. 220 .L67:
  226. 221 001c 6B81 ldd r22,Y+3
  227. 222 001e 6F5F subi r22,lo8(-(1))
  228. 223 0020 6B83 std Y+3,r22
  229. 224 0022 40E0 ldi r20,0
  230. 225 0024 CF01 movw r24,r30
  231. 226 0026 0E94 0000 call LcpTxConfReq
  232. 227 002a 86E0 ldi r24,lo8(6)
  233. GAS LISTING /tmp/ccO1mtn0.s page 5
  234. 228 002c 00C0 rjmp .L70
  235. 229 .L68:
  236. 230 002e 85E0 ldi r24,lo8(5)
  237. 231 .L70:
  238. 232 0030 8A83 std Y+2,r24
  239. 233 .L65:
  240. 234 /* epilogue start */
  241. 235 0032 DF91 pop r29
  242. 236 0034 CF91 pop r28
  243. 237 0036 0895 ret
  244. 238 .size LcpOpen, .-LcpOpen
  245. 239 .section .text.LcpLowerUp,"ax",@progbits
  246. 240 .global LcpLowerUp
  247. 241 .type LcpLowerUp, @function
  248. 242 LcpLowerUp:
  249. 243 0000 CF93 push r28
  250. 244 0002 DF93 push r29
  251. 245 /* prologue: function */
  252. 246 /* frame size = 0 */
  253. 247 /* stack size = 2 */
  254. 248 .L__stack_usage = 2
  255. 249 0004 FC01 movw r30,r24
  256. 250 0006 C189 ldd r28,Z+17
  257. 251 0008 D289 ldd r29,Z+18
  258. 252 000a 2A81 ldd r18,Y+2
  259. 253 000c 2223 tst r18
  260. 254 000e 01F0 breq .L73
  261. 255 0010 2130 cpi r18,lo8(1)
  262. 256 0012 01F4 brne .L71
  263. 257 0014 6B81 ldd r22,Y+3
  264. 258 0016 6F5F subi r22,lo8(-(1))
  265. 259 0018 6B83 std Y+3,r22
  266. 260 001a 40E0 ldi r20,0
  267. 261 001c 0E94 0000 call LcpTxConfReq
  268. 262 0020 86E0 ldi r24,lo8(6)
  269. 263 0022 00C0 rjmp .L75
  270. 264 .L73:
  271. 265 0024 82E0 ldi r24,lo8(2)
  272. 266 .L75:
  273. 267 0026 8A83 std Y+2,r24
  274. 268 .L71:
  275. 269 /* epilogue start */
  276. 270 0028 DF91 pop r29
  277. 271 002a CF91 pop r28
  278. 272 002c 0895 ret
  279. 273 .size LcpLowerUp, .-LcpLowerUp
  280. 274 .section .text.IpcpOpen,"ax",@progbits
  281. 275 .global IpcpOpen
  282. 276 .type IpcpOpen, @function
  283. 277 IpcpOpen:
  284. 278 0000 CF93 push r28
  285. 279 0002 DF93 push r29
  286. 280 /* prologue: function */
  287. 281 /* frame size = 0 */
  288. 282 /* stack size = 2 */
  289. 283 .L__stack_usage = 2
  290. 284 0004 FC01 movw r30,r24
  291. GAS LISTING /tmp/ccO1mtn0.s page 6
  292. 285 0006 C189 ldd r28,Z+17
  293. 286 0008 D289 ldd r29,Z+18
  294. 287 000a 2CAD ldd r18,Y+60
  295. 288 000c 2230 cpi r18,lo8(2)
  296. 289 000e 01F0 breq .L78
  297. 290 0010 2430 cpi r18,lo8(4)
  298. 291 0012 01F0 breq .L79
  299. 292 0014 2111 cpse r18,__zero_reg__
  300. 293 0016 00C0 rjmp .L76
  301. 294 0018 21E0 ldi r18,lo8(1)
  302. 295 001a 2CAF std Y+60,r18
  303. 296 /* epilogue start */
  304. 297 001c DF91 pop r29
  305. 298 001e CF91 pop r28
  306. 299 0020 0C94 0000 jmp LcpOpen
  307. 300 .L78:
  308. 301 0024 6B81 ldd r22,Y+3
  309. 302 0026 6F5F subi r22,lo8(-(1))
  310. 303 0028 6B83 std Y+3,r22
  311. 304 002a 0E94 0000 call IpcpTxConfReq
  312. 305 002e 86E0 ldi r24,lo8(6)
  313. 306 0030 00C0 rjmp .L81
  314. 307 .L79:
  315. 308 0032 85E0 ldi r24,lo8(5)
  316. 309 .L81:
  317. 310 0034 8CAF std Y+60,r24
  318. 311 .L76:
  319. 312 /* epilogue start */
  320. 313 0036 DF91 pop r29
  321. 314 0038 CF91 pop r28
  322. 315 003a 0895 ret
  323. 316 .size IpcpOpen, .-IpcpOpen
  324. 317 .section .text.IpcpClose,"ax",@progbits
  325. 318 .global IpcpClose
  326. 319 .type IpcpClose, @function
  327. 320 IpcpClose:
  328. 321 0000 CF93 push r28
  329. 322 0002 DF93 push r29
  330. 323 /* prologue: function */
  331. 324 /* frame size = 0 */
  332. 325 /* stack size = 2 */
  333. 326 .L__stack_usage = 2
  334. 327 0004 FC01 movw r30,r24
  335. 328 0006 C189 ldd r28,Z+17
  336. 329 0008 D289 ldd r29,Z+18
  337. 330 000a 9CAD ldd r25,Y+60
  338. 331 000c 9530 cpi r25,lo8(5)
  339. 332 000e 01F0 breq .L84
  340. 333 0010 00F4 brsh .L85
  341. 334 0012 9130 cpi r25,lo8(1)
  342. 335 0014 01F0 breq .L86
  343. 336 0016 9330 cpi r25,lo8(3)
  344. 337 0018 01F4 brne .L82
  345. 338 001a 82E0 ldi r24,lo8(2)
  346. 339 001c 00C0 rjmp .L90
  347. 340 .L85:
  348. 341 001e 9A30 cpi r25,lo8(10)
  349. GAS LISTING /tmp/ccO1mtn0.s page 7
  350. 342 0020 00F4 brsh .L82
  351. 343 0022 20E0 ldi r18,0
  352. 344 0024 30E0 ldi r19,0
  353. 345 0026 4B81 ldd r20,Y+3
  354. 346 0028 65E0 ldi r22,lo8(5)
  355. 347 002a CF01 movw r24,r30
  356. 348 002c 0E94 0000 call NutIpcpOutput
  357. 349 0030 84E0 ldi r24,lo8(4)
  358. 350 0032 8CAF std Y+60,r24
  359. 351 0034 CE01 movw r24,r28
  360. 352 /* epilogue start */
  361. 353 0036 DF91 pop r29
  362. 354 0038 CF91 pop r28
  363. 355 003a 0C94 0000 jmp NutEventPost
  364. 356 .L86:
  365. 357 003e 1CAE std Y+60,__zero_reg__
  366. 358 0040 00C0 rjmp .L82
  367. 359 .L84:
  368. 360 0042 84E0 ldi r24,lo8(4)
  369. 361 .L90:
  370. 362 0044 8CAF std Y+60,r24
  371. 363 .L82:
  372. 364 /* epilogue start */
  373. 365 0046 DF91 pop r29
  374. 366 0048 CF91 pop r28
  375. 367 004a 0895 ret
  376. 368 .size IpcpClose, .-IpcpClose
  377. 369 .section .text.IpcpLowerUp,"ax",@progbits
  378. 370 .global IpcpLowerUp
  379. 371 .type IpcpLowerUp, @function
  380. 372 IpcpLowerUp:
  381. 373 0000 CF93 push r28
  382. 374 0002 DF93 push r29
  383. 375 /* prologue: function */
  384. 376 /* frame size = 0 */
  385. 377 /* stack size = 2 */
  386. 378 .L__stack_usage = 2
  387. 379 0004 FC01 movw r30,r24
  388. 380 0006 C189 ldd r28,Z+17
  389. 381 0008 D289 ldd r29,Z+18
  390. 382 000a 2CAD ldd r18,Y+60
  391. 383 000c 2223 tst r18
  392. 384 000e 01F0 breq .L93
  393. 385 0010 2130 cpi r18,lo8(1)
  394. 386 0012 01F4 brne .L91
  395. 387 0014 6B81 ldd r22,Y+3
  396. 388 0016 6F5F subi r22,lo8(-(1))
  397. 389 0018 6B83 std Y+3,r22
  398. 390 001a 0E94 0000 call IpcpTxConfReq
  399. 391 001e 86E0 ldi r24,lo8(6)
  400. 392 0020 00C0 rjmp .L95
  401. 393 .L93:
  402. 394 0022 82E0 ldi r24,lo8(2)
  403. 395 .L95:
  404. 396 0024 8CAF std Y+60,r24
  405. 397 .L91:
  406. 398 /* epilogue start */
  407. GAS LISTING /tmp/ccO1mtn0.s page 8
  408. 399 0026 DF91 pop r29
  409. 400 0028 CF91 pop r28
  410. 401 002a 0895 ret
  411. 402 .size IpcpLowerUp, .-IpcpLowerUp
  412. 403 .section .text.IpcpLowerDown,"ax",@progbits
  413. 404 .global IpcpLowerDown
  414. 405 .type IpcpLowerDown, @function
  415. 406 IpcpLowerDown:
  416. 407 /* prologue: function */
  417. 408 /* frame size = 0 */
  418. 409 /* stack size = 0 */
  419. 410 .L__stack_usage = 0
  420. 411 0000 DC01 movw r26,r24
  421. 412 0002 5196 adiw r26,17
  422. 413 0004 ED91 ld r30,X+
  423. 414 0006 FC91 ld r31,X
  424. 415 0008 5297 sbiw r26,17+1
  425. 416 000a 84AD ldd r24,Z+60
  426. 417 000c 8430 cpi r24,lo8(4)
  427. 418 000e 01F0 breq .L98
  428. 419 0010 00F4 brsh .L99
  429. 420 0012 8230 cpi r24,lo8(2)
  430. 421 0014 01F0 breq .L100
  431. 422 0016 8330 cpi r24,lo8(3)
  432. 423 0018 01F0 breq .L102
  433. 424 001a 0895 ret
  434. 425 .L99:
  435. 426 001c 8930 cpi r24,lo8(9)
  436. 427 001e 00F0 brlo .L102
  437. 428 0020 8930 cpi r24,lo8(9)
  438. 429 0022 01F0 breq .L103
  439. 430 0024 0895 ret
  440. 431 .L100:
  441. 432 0026 14AE std Z+60,__zero_reg__
  442. 433 0028 FF96 adiw r30,63
  443. 434 002a 40E0 ldi r20,0
  444. 435 002c 50E0 ldi r21,0
  445. 436 002e 67E1 ldi r22,lo8(23)
  446. 437 0030 71E0 ldi r23,lo8(1)
  447. 438 0032 8081 ld r24,Z
  448. 439 0034 9181 ldd r25,Z+1
  449. 440 0036 0C94 0000 jmp _ioctl
  450. 441 .L98:
  451. 442 003a 14AE std Z+60,__zero_reg__
  452. 443 003c 0895 ret
  453. 444 .L102:
  454. 445 003e 81E0 ldi r24,lo8(1)
  455. 446 0040 84AF std Z+60,r24
  456. 447 0042 0895 ret
  457. 448 .L103:
  458. 449 0044 81E0 ldi r24,lo8(1)
  459. 450 0046 84AF std Z+60,r24
  460. 451 0048 CF01 movw r24,r30
  461. 452 004a 0C94 0000 jmp NutEventPost
  462. 453 .size IpcpLowerDown, .-IpcpLowerDown
  463. 454 .section .text.LcpClose,"ax",@progbits
  464. 455 .global LcpClose
  465. GAS LISTING /tmp/ccO1mtn0.s page 9
  466. 456 .type LcpClose, @function
  467. 457 LcpClose:
  468. 458 0000 0F93 push r16
  469. 459 0002 1F93 push r17
  470. 460 0004 CF93 push r28
  471. 461 0006 DF93 push r29
  472. 462 /* prologue: function */
  473. 463 /* frame size = 0 */
  474. 464 /* stack size = 4 */
  475. 465 .L__stack_usage = 4
  476. 466 0008 8C01 movw r16,r24
  477. 467 000a FC01 movw r30,r24
  478. 468 000c C189 ldd r28,Z+17
  479. 469 000e D289 ldd r29,Z+18
  480. 470 0010 8A81 ldd r24,Y+2
  481. 471 0012 8530 cpi r24,lo8(5)
  482. 472 0014 01F0 breq .L106
  483. 473 0016 00F4 brsh .L107
  484. 474 0018 8130 cpi r24,lo8(1)
  485. 475 001a 01F0 breq .L108
  486. 476 001c 8330 cpi r24,lo8(3)
  487. 477 001e 01F4 brne .L104
  488. 478 0020 82E0 ldi r24,lo8(2)
  489. 479 0022 00C0 rjmp .L112
  490. 480 .L107:
  491. 481 0024 8A30 cpi r24,lo8(10)
  492. 482 0026 00F4 brsh .L104
  493. 483 0028 84E0 ldi r24,lo8(4)
  494. 484 002a 8A83 std Y+2,r24
  495. 485 002c C801 movw r24,r16
  496. 486 002e 0E94 0000 call IpcpLowerDown
  497. 487 0032 20E0 ldi r18,0
  498. 488 0034 30E0 ldi r19,0
  499. 489 0036 4B81 ldd r20,Y+3
  500. 490 0038 65E0 ldi r22,lo8(5)
  501. 491 003a C801 movw r24,r16
  502. 492 /* epilogue start */
  503. 493 003c DF91 pop r29
  504. 494 003e CF91 pop r28
  505. 495 0040 1F91 pop r17
  506. 496 0042 0F91 pop r16
  507. 497 0044 0C94 0000 jmp NutLcpOutput
  508. 498 .L108:
  509. 499 0048 1A82 std Y+2,__zero_reg__
  510. 500 004a 00C0 rjmp .L104
  511. 501 .L106:
  512. 502 004c 84E0 ldi r24,lo8(4)
  513. 503 .L112:
  514. 504 004e 8A83 std Y+2,r24
  515. 505 .L104:
  516. 506 /* epilogue start */
  517. 507 0050 DF91 pop r29
  518. 508 0052 CF91 pop r28
  519. 509 0054 1F91 pop r17
  520. 510 0056 0F91 pop r16
  521. 511 0058 0895 ret
  522. 512 .size LcpClose, .-LcpClose
  523. GAS LISTING /tmp/ccO1mtn0.s page 10
  524. 513 .section .text.LcpLowerDown,"ax",@progbits
  525. 514 .global LcpLowerDown
  526. 515 .type LcpLowerDown, @function
  527. 516 LcpLowerDown:
  528. 517 0000 CF93 push r28
  529. 518 0002 DF93 push r29
  530. 519 /* prologue: function */
  531. 520 /* frame size = 0 */
  532. 521 /* stack size = 2 */
  533. 522 .L__stack_usage = 2
  534. 523 0004 FC01 movw r30,r24
  535. 524 0006 C189 ldd r28,Z+17
  536. 525 0008 D289 ldd r29,Z+18
  537. 526 000a 9A81 ldd r25,Y+2
  538. 527 000c 9430 cpi r25,lo8(4)
  539. 528 000e 01F0 breq .L115
  540. 529 0010 00F4 brsh .L116
  541. 530 0012 9230 cpi r25,lo8(2)
  542. 531 0014 01F0 breq .L115
  543. 532 0016 9330 cpi r25,lo8(3)
  544. 533 0018 01F0 breq .L121
  545. 534 001a 00C0 rjmp .L113
  546. 535 .L116:
  547. 536 001c 9930 cpi r25,lo8(9)
  548. 537 001e 00F0 brlo .L121
  549. 538 0020 9930 cpi r25,lo8(9)
  550. 539 0022 01F4 brne .L113
  551. 540 0024 CF01 movw r24,r30
  552. 541 0026 0E94 0000 call IpcpLowerDown
  553. 542 002a 00C0 rjmp .L121
  554. 543 .L115:
  555. 544 002c 1A82 std Y+2,__zero_reg__
  556. 545 002e 00C0 rjmp .L113
  557. 546 .L121:
  558. 547 0030 81E0 ldi r24,lo8(1)
  559. 548 0032 8A83 std Y+2,r24
  560. 549 .L113:
  561. 550 /* epilogue start */
  562. 551 0034 DF91 pop r29
  563. 552 0036 CF91 pop r28
  564. 553 0038 0895 ret
  565. 554 .size LcpLowerDown, .-LcpLowerDown
  566. 555 .local pppThread
  567. 556 .comm pppThread,2,1
  568. 557 .global new_magic
  569. 558 .data
  570. 559 .type new_magic, @object
  571. 560 .size new_magic, 4
  572. 561 new_magic:
  573. 562 0000 78 .byte 120
  574. 563 0001 56 .byte 86
  575. 564 0002 34 .byte 52
  576. 565 0003 12 .byte 18
  577. 566 .ident "GCC: (GNU) 5.3.0"
  578. 567 .global __do_copy_data
  579. 568 .global __do_clear_bss
  580. GAS LISTING /tmp/ccO1mtn0.s page 11
  581. DEFINED SYMBOLS
  582. *ABS*:0000000000000000 pppsm.c
  583. /tmp/ccO1mtn0.s:2 *ABS*:000000000000003e __SP_H__
  584. /tmp/ccO1mtn0.s:3 *ABS*:000000000000003d __SP_L__
  585. /tmp/ccO1mtn0.s:4 *ABS*:000000000000003f __SREG__
  586. /tmp/ccO1mtn0.s:5 *ABS*:000000000000003b __RAMPZ__
  587. /tmp/ccO1mtn0.s:6 *ABS*:0000000000000000 __tmp_reg__
  588. /tmp/ccO1mtn0.s:7 *ABS*:0000000000000001 __zero_reg__
  589. /tmp/ccO1mtn0.s:11 .text.NutPppSm:0000000000000000 NutPppSm
  590. /tmp/ccO1mtn0.s:561 .data:0000000000000000 new_magic
  591. /tmp/ccO1mtn0.s:162 .text.NutPppInitStateMachine:0000000000000000 NutPppInitStateMachine
  592. .bss:0000000000000000 pppThread
  593. /tmp/ccO1mtn0.s:201 .text.LcpOpen:0000000000000000 LcpOpen
  594. /tmp/ccO1mtn0.s:242 .text.LcpLowerUp:0000000000000000 LcpLowerUp
  595. /tmp/ccO1mtn0.s:277 .text.IpcpOpen:0000000000000000 IpcpOpen
  596. /tmp/ccO1mtn0.s:320 .text.IpcpClose:0000000000000000 IpcpClose
  597. /tmp/ccO1mtn0.s:372 .text.IpcpLowerUp:0000000000000000 IpcpLowerUp
  598. /tmp/ccO1mtn0.s:406 .text.IpcpLowerDown:0000000000000000 IpcpLowerDown
  599. /tmp/ccO1mtn0.s:457 .text.LcpClose:0000000000000000 LcpClose
  600. /tmp/ccO1mtn0.s:516 .text.LcpLowerDown:0000000000000000 LcpLowerDown
  601. UNDEFINED SYMBOLS
  602. NutSleep
  603. NutLcpOutput
  604. LcpTxConfReq
  605. PapTxAuthReq
  606. NutIpcpOutput
  607. IpcpTxConfReq
  608. NutThreadCreate
  609. NutEventPost
  610. _ioctl
  611. __do_copy_data
  612. __do_clear_bss