lcpout.lst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398
  1. GAS LISTING /tmp/ccSjCngo.s page 1
  2. 1 .file "lcpout.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.NutLcpOutput,"ax",@progbits
  10. 9 .global NutLcpOutput
  11. 10 .type NutLcpOutput, @function
  12. 11 NutLcpOutput:
  13. 12 0000 EF92 push r14
  14. 13 0002 FF92 push r15
  15. 14 0004 0F93 push r16
  16. 15 0006 1F93 push r17
  17. 16 0008 CF93 push r28
  18. 17 000a DF93 push r29
  19. 18 /* prologue: function */
  20. 19 /* frame size = 0 */
  21. 20 /* stack size = 6 */
  22. 21 .L__stack_usage = 6
  23. 22 000c 8C01 movw r16,r24
  24. 23 000e E62E mov r14,r22
  25. 24 0010 F42E mov r15,r20
  26. 25 0012 C901 movw r24,r18
  27. 26 0014 44E0 ldi r20,lo8(4)
  28. 27 0016 50E0 ldi r21,0
  29. 28 0018 60E2 ldi r22,lo8(32)
  30. 29 001a 0E94 0000 call NutNetBufAlloc
  31. 30 001e EC01 movw r28,r24
  32. 31 0020 892B or r24,r25
  33. 32 0022 01F0 breq .L3
  34. 33 0024 EF81 ldd r30,Y+7
  35. 34 0026 F885 ldd r31,Y+8
  36. 35 0028 E082 st Z,r14
  37. 36 002a F182 std Z+1,r15
  38. 37 002c 2985 ldd r18,Y+9
  39. 38 002e 3A85 ldd r19,Y+10
  40. 39 0030 8D85 ldd r24,Y+13
  41. 40 0032 9E85 ldd r25,Y+14
  42. 41 0034 820F add r24,r18
  43. 42 0036 931F adc r25,r19
  44. 43 0038 2989 ldd r18,Y+17
  45. 44 003a 3A89 ldd r19,Y+18
  46. 45 003c 820F add r24,r18
  47. 46 003e 931F adc r25,r19
  48. 47 /* #APP */
  49. 48 ; 309 "../../nut/include/sys/types.h" 1
  50. 49 0040 082E mov __tmp_reg__, r24
  51. 50 0042 892F mov r24, r25
  52. 51 0044 902D mov r25, __tmp_reg__
  53. 52
  54. 53 ; 0 "" 2
  55. 54 /* #NOAPP */
  56. 55 0046 9383 std Z+3,r25
  57. 56 0048 8283 std Z+2,r24
  58. 57 004a 9E01 movw r18,r28
  59. GAS LISTING /tmp/ccSjCngo.s page 2
  60. 58 004c 40E0 ldi r20,0
  61. 59 004e 50E0 ldi r21,0
  62. 60 0050 61E2 ldi r22,lo8(33)
  63. 61 0052 70EC ldi r23,lo8(-64)
  64. 62 0054 C801 movw r24,r16
  65. 63 0056 0E94 0000 call NutPppOutput
  66. 64 005a 8C01 movw r16,r24
  67. 65 005c 892B or r24,r25
  68. 66 005e 01F4 brne .L4
  69. 67 0060 CE01 movw r24,r28
  70. 68 0062 0E94 0000 call NutNetBufFree
  71. 69 0066 00C0 rjmp .L2
  72. 70 .L3:
  73. 71 0068 0FEF ldi r16,lo8(-1)
  74. 72 006a 1FEF ldi r17,lo8(-1)
  75. 73 006c 00C0 rjmp .L2
  76. 74 .L4:
  77. 75 006e 00E0 ldi r16,0
  78. 76 0070 10E0 ldi r17,0
  79. 77 .L2:
  80. 78 0072 C801 movw r24,r16
  81. 79 /* epilogue start */
  82. 80 0074 DF91 pop r29
  83. 81 0076 CF91 pop r28
  84. 82 0078 1F91 pop r17
  85. 83 007a 0F91 pop r16
  86. 84 007c FF90 pop r15
  87. 85 007e EF90 pop r14
  88. 86 0080 0895 ret
  89. 87 .size NutLcpOutput, .-NutLcpOutput
  90. 88 .section .text.LcpTxConfReq,"ax",@progbits
  91. 89 .global LcpTxConfReq
  92. 90 .type LcpTxConfReq, @function
  93. 91 LcpTxConfReq:
  94. 92 0000 EF92 push r14
  95. 93 0002 FF92 push r15
  96. 94 0004 0F93 push r16
  97. 95 0006 1F93 push r17
  98. 96 0008 CF93 push r28
  99. 97 000a DF93 push r29
  100. 98 /* prologue: function */
  101. 99 /* frame size = 0 */
  102. 100 /* stack size = 6 */
  103. 101 .L__stack_usage = 6
  104. 102 000c 8C01 movw r16,r24
  105. 103 000e E62E mov r14,r22
  106. 104 0010 F42E mov r15,r20
  107. 105 0012 DC01 movw r26,r24
  108. 106 0014 5196 adiw r26,17
  109. 107 0016 CD91 ld r28,X+
  110. 108 0018 DC91 ld r29,X
  111. 109 001a 5297 sbiw r26,17+1
  112. 110 001c 8A81 ldd r24,Y+2
  113. 111 001e 8650 subi r24,lo8(-(-6))
  114. 112 0020 8330 cpi r24,lo8(3)
  115. 113 0022 00F4 brsh .+2
  116. 114 0024 00C0 rjmp .L7
  117. GAS LISTING /tmp/ccSjCngo.s page 3
  118. 115 0026 1E86 std Y+14,__zero_reg__
  119. 116 0028 ED8D ldd r30,Y+29
  120. 117 002a FE8D ldd r31,Y+30
  121. 118 002c 3097 sbiw r30,0
  122. 119 002e 01F0 breq .L8
  123. 120 0030 8081 ld r24,Z
  124. 121 0032 8111 cpse r24,__zero_reg__
  125. 122 0034 00C0 rjmp .L9
  126. 123 .L8:
  127. 124 0036 EF8D ldd r30,Y+31
  128. 125 0038 F8A1 ldd r31,Y+32
  129. 126 003a 3097 sbiw r30,0
  130. 127 003c 01F0 breq .L10
  131. 128 003e 8081 ld r24,Z
  132. 129 0040 8823 tst r24
  133. 130 0042 01F0 breq .L10
  134. 131 .L9:
  135. 132 0044 83E2 ldi r24,lo8(35)
  136. 133 0046 90EC ldi r25,lo8(-64)
  137. 134 0048 988B std Y+16,r25
  138. 135 004a 8F87 std Y+15,r24
  139. 136 004c 00C0 rjmp .L11
  140. 137 .L10:
  141. 138 004e 188A std Y+16,__zero_reg__
  142. 139 0050 1F86 std Y+15,__zero_reg__
  143. 140 .L11:
  144. 141 0052 8091 0000 lds r24,new_magic
  145. 142 0056 9091 0000 lds r25,new_magic+1
  146. 143 005a A091 0000 lds r26,new_magic+2
  147. 144 005e B091 0000 lds r27,new_magic+3
  148. 145 0062 898B std Y+17,r24
  149. 146 0064 9A8B std Y+18,r25
  150. 147 0066 AB8B std Y+19,r26
  151. 148 0068 BC8B std Y+20,r27
  152. 149 006a 1D8A std Y+21,__zero_reg__
  153. 150 006c 1E8A std Y+22,__zero_reg__
  154. 151 006e 1F8A std Y+23,__zero_reg__
  155. 152 0070 188E std Y+24,__zero_reg__
  156. 153 0072 198E std Y+25,__zero_reg__
  157. 154 0074 1A8E std Y+26,__zero_reg__
  158. 155 0076 1B8E std Y+27,__zero_reg__
  159. 156 0078 1C8E std Y+28,__zero_reg__
  160. 157 007a 8FEF ldi r24,lo8(-1)
  161. 158 007c 9FEF ldi r25,lo8(-1)
  162. 159 007e DC01 movw r26,r24
  163. 160 0080 8A87 std Y+10,r24
  164. 161 0082 9B87 std Y+11,r25
  165. 162 0084 AC87 std Y+12,r26
  166. 163 0086 BD87 std Y+13,r27
  167. 164 0088 8CED ldi r24,lo8(-36)
  168. 165 008a 95E0 ldi r25,lo8(5)
  169. 166 008c 9F83 std Y+7,r25
  170. 167 008e 8E83 std Y+6,r24
  171. 168 0090 AE01 movw r20,r28
  172. 169 0092 465F subi r20,-10
  173. 170 0094 5F4F sbci r21,-1
  174. 171 0096 6EE2 ldi r22,lo8(46)
  175. GAS LISTING /tmp/ccSjCngo.s page 4
  176. 172 0098 71E0 ldi r23,lo8(1)
  177. 173 009a FE01 movw r30,r28
  178. 174 009c FF96 adiw r30,63
  179. 175 009e 8081 ld r24,Z
  180. 176 00a0 9181 ldd r25,Z+1
  181. 177 00a2 0E94 0000 call _ioctl
  182. 178 00a6 1AAE std Y+58,__zero_reg__
  183. 179 .L7:
  184. 180 00a8 1D82 std Y+5,__zero_reg__
  185. 181 00aa 19AE std Y+57,__zero_reg__
  186. 182 00ac F110 cpse r15,__zero_reg__
  187. 183 00ae 00C0 rjmp .L15
  188. 184 00b0 4CE0 ldi r20,lo8(12)
  189. 185 00b2 50E0 ldi r21,0
  190. 186 00b4 00C0 rjmp .L12
  191. 187 .L15:
  192. 188 00b6 46E0 ldi r20,lo8(6)
  193. 189 00b8 50E0 ldi r21,0
  194. 190 .L12:
  195. 191 00ba 60E8 ldi r22,lo8(-128)
  196. 192 00bc 80E0 ldi r24,0
  197. 193 00be 90E0 ldi r25,0
  198. 194 00c0 0E94 0000 call NutNetBufAlloc
  199. 195 00c4 0097 sbiw r24,0
  200. 196 00c6 01F0 breq .L6
  201. 197 00c8 DC01 movw r26,r24
  202. 198 00ca 1F96 adiw r26,15
  203. 199 00cc ED91 ld r30,X+
  204. 200 00ce FC91 ld r31,X
  205. 201 00d0 5097 sbiw r26,15+1
  206. 202 00d2 22E0 ldi r18,lo8(2)
  207. 203 00d4 2083 st Z,r18
  208. 204 00d6 26E0 ldi r18,lo8(6)
  209. 205 00d8 2183 std Z+1,r18
  210. 206 00da 40E0 ldi r20,0
  211. 207 00dc 50E0 ldi r21,0
  212. 208 00de 6AE0 ldi r22,lo8(10)
  213. 209 00e0 70E0 ldi r23,0
  214. 210 /* #APP */
  215. 211 ; 319 "../../nut/include/sys/types.h" 1
  216. 212 00e2 042E mov __tmp_reg__, r20
  217. 213 00e4 472F mov r20, r23
  218. 214 00e6 702D mov r23, __tmp_reg__
  219. 215 00e8 052E mov __tmp_reg__, r21
  220. 216 00ea 562F mov r21, r22
  221. 217 00ec 602D mov r22, __tmp_reg__
  222. 218
  223. 219 ; 0 "" 2
  224. 220 /* #NOAPP */
  225. 221 00ee 4283 std Z+2,r20
  226. 222 00f0 5383 std Z+3,r21
  227. 223 00f2 6483 std Z+4,r22
  228. 224 00f4 7583 std Z+5,r23
  229. 225 00f6 F110 cpse r15,__zero_reg__
  230. 226 00f8 00C0 rjmp .L14
  231. 227 00fa 35E0 ldi r19,lo8(5)
  232. 228 00fc 3683 std Z+6,r19
  233. GAS LISTING /tmp/ccSjCngo.s page 5
  234. 229 00fe 2783 std Z+7,r18
  235. 230 0100 4989 ldd r20,Y+17
  236. 231 0102 5A89 ldd r21,Y+18
  237. 232 0104 6B89 ldd r22,Y+19
  238. 233 0106 7C89 ldd r23,Y+20
  239. 234 0108 4087 std Z+8,r20
  240. 235 010a 5187 std Z+9,r21
  241. 236 010c 6287 std Z+10,r22
  242. 237 010e 7387 std Z+11,r23
  243. 238 .L14:
  244. 239 0110 9C01 movw r18,r24
  245. 240 0112 4E2D mov r20,r14
  246. 241 0114 61E0 ldi r22,lo8(1)
  247. 242 0116 C801 movw r24,r16
  248. 243 /* epilogue start */
  249. 244 0118 DF91 pop r29
  250. 245 011a CF91 pop r28
  251. 246 011c 1F91 pop r17
  252. 247 011e 0F91 pop r16
  253. 248 0120 FF90 pop r15
  254. 249 0122 EF90 pop r14
  255. 250 0124 0C94 0000 jmp NutLcpOutput
  256. 251 .L6:
  257. 252 /* epilogue start */
  258. 253 0128 DF91 pop r29
  259. 254 012a CF91 pop r28
  260. 255 012c 1F91 pop r17
  261. 256 012e 0F91 pop r16
  262. 257 0130 FF90 pop r15
  263. 258 0132 EF90 pop r14
  264. 259 0134 0895 ret
  265. 260 .size LcpTxConfReq, .-LcpTxConfReq
  266. 261 .section .text.LcpTxProtRej,"ax",@progbits
  267. 262 .global LcpTxProtRej
  268. 263 .type LcpTxProtRej, @function
  269. 264 LcpTxProtRej:
  270. 265 0000 AF92 push r10
  271. 266 0002 BF92 push r11
  272. 267 0004 CF92 push r12
  273. 268 0006 DF92 push r13
  274. 269 0008 EF92 push r14
  275. 270 000a FF92 push r15
  276. 271 000c 0F93 push r16
  277. 272 000e 1F93 push r17
  278. 273 0010 CF93 push r28
  279. 274 0012 DF93 push r29
  280. 275 /* prologue: function */
  281. 276 /* frame size = 0 */
  282. 277 /* stack size = 10 */
  283. 278 .L__stack_usage = 10
  284. 279 0014 7C01 movw r14,r24
  285. 280 0016 8B01 movw r16,r22
  286. 281 0018 EA01 movw r28,r20
  287. 282 001a FC01 movw r30,r24
  288. 283 001c C188 ldd r12,Z+17
  289. 284 001e D288 ldd r13,Z+18
  290. 285 0020 4985 ldd r20,Y+9
  291. GAS LISTING /tmp/ccSjCngo.s page 6
  292. 286 0022 5A85 ldd r21,Y+10
  293. 287 0024 60E8 ldi r22,lo8(-128)
  294. 288 0026 80E0 ldi r24,0
  295. 289 0028 90E0 ldi r25,0
  296. 290 002a 0E94 0000 call NutNetBufAlloc
  297. 291 002e 5C01 movw r10,r24
  298. 292 0030 0097 sbiw r24,0
  299. 293 0032 01F0 breq .L26
  300. 294 0034 FC01 movw r30,r24
  301. 295 0036 3785 ldd r19,Z+15
  302. 296 0038 2089 ldd r18,Z+16
  303. 297 003a B801 movw r22,r16
  304. 298 /* #APP */
  305. 299 ; 309 "../../nut/include/sys/types.h" 1
  306. 300 003c 062E mov __tmp_reg__, r22
  307. 301 003e 672F mov r22, r23
  308. 302 0040 702D mov r23, __tmp_reg__
  309. 303
  310. 304 ; 0 "" 2
  311. 305 /* #NOAPP */
  312. 306 0042 832F mov r24,r19
  313. 307 0044 922F mov r25,r18
  314. 308 0046 FC01 movw r30,r24
  315. 309 0048 6193 st Z+,r22
  316. 310 004a 7193 st Z+,r23
  317. 311 004c CF01 movw r24,r30
  318. 312 004e 4985 ldd r20,Y+9
  319. 313 0050 5A85 ldd r21,Y+10
  320. 314 0052 4250 subi r20,2
  321. 315 0054 5109 sbc r21,__zero_reg__
  322. 316 0056 6F81 ldd r22,Y+7
  323. 317 0058 7885 ldd r23,Y+8
  324. 318 005a 0E94 0000 call memcpy
  325. 319 005e CE01 movw r24,r28
  326. 320 0060 0E94 0000 call NutNetBufFree
  327. 321 0064 F601 movw r30,r12
  328. 322 0066 4481 ldd r20,Z+4
  329. 323 0068 4F5F subi r20,lo8(-(1))
  330. 324 006a 4483 std Z+4,r20
  331. 325 006c 9501 movw r18,r10
  332. 326 006e 68E0 ldi r22,lo8(8)
  333. 327 0070 C701 movw r24,r14
  334. 328 /* epilogue start */
  335. 329 0072 DF91 pop r29
  336. 330 0074 CF91 pop r28
  337. 331 0076 1F91 pop r17
  338. 332 0078 0F91 pop r16
  339. 333 007a FF90 pop r15
  340. 334 007c EF90 pop r14
  341. 335 007e DF90 pop r13
  342. 336 0080 CF90 pop r12
  343. 337 0082 BF90 pop r11
  344. 338 0084 AF90 pop r10
  345. 339 0086 0C94 0000 jmp NutLcpOutput
  346. 340 .L26:
  347. 341 008a CE01 movw r24,r28
  348. 342 /* epilogue start */
  349. GAS LISTING /tmp/ccSjCngo.s page 7
  350. 343 008c DF91 pop r29
  351. 344 008e CF91 pop r28
  352. 345 0090 1F91 pop r17
  353. 346 0092 0F91 pop r16
  354. 347 0094 FF90 pop r15
  355. 348 0096 EF90 pop r14
  356. 349 0098 DF90 pop r13
  357. 350 009a CF90 pop r12
  358. 351 009c BF90 pop r11
  359. 352 009e AF90 pop r10
  360. 353 00a0 0C94 0000 jmp NutNetBufFree
  361. 354 .size LcpTxProtRej, .-LcpTxProtRej
  362. 355 .ident "GCC: (GNU) 5.3.0"
  363. GAS LISTING /tmp/ccSjCngo.s page 8
  364. DEFINED SYMBOLS
  365. *ABS*:0000000000000000 lcpout.c
  366. /tmp/ccSjCngo.s:2 *ABS*:000000000000003e __SP_H__
  367. /tmp/ccSjCngo.s:3 *ABS*:000000000000003d __SP_L__
  368. /tmp/ccSjCngo.s:4 *ABS*:000000000000003f __SREG__
  369. /tmp/ccSjCngo.s:5 *ABS*:000000000000003b __RAMPZ__
  370. /tmp/ccSjCngo.s:6 *ABS*:0000000000000000 __tmp_reg__
  371. /tmp/ccSjCngo.s:7 *ABS*:0000000000000001 __zero_reg__
  372. /tmp/ccSjCngo.s:11 .text.NutLcpOutput:0000000000000000 NutLcpOutput
  373. /tmp/ccSjCngo.s:91 .text.LcpTxConfReq:0000000000000000 LcpTxConfReq
  374. /tmp/ccSjCngo.s:264 .text.LcpTxProtRej:0000000000000000 LcpTxProtRej
  375. UNDEFINED SYMBOLS
  376. NutNetBufAlloc
  377. NutPppOutput
  378. NutNetBufFree
  379. new_magic
  380. _ioctl
  381. memcpy