httpopt.lst 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708
  1. GAS LISTING /tmp/ccAnaEr7.s page 1
  2. 1 .file "httpopt.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.NutSetMimeHandler,"ax",@progbits
  10. 9 .global NutSetMimeHandler
  11. 10 .type NutSetMimeHandler, @function
  12. 11 NutSetMimeHandler:
  13. 12 0000 CF92 push r12
  14. 13 0002 DF92 push r13
  15. 14 0004 EF92 push r14
  16. 15 0006 FF92 push r15
  17. 16 0008 0F93 push r16
  18. 17 000a 1F93 push r17
  19. 18 000c CF93 push r28
  20. 19 000e DF93 push r29
  21. 20 /* prologue: function */
  22. 21 /* frame size = 0 */
  23. 22 /* stack size = 8 */
  24. 23 .L__stack_usage = 8
  25. 24 0010 6C01 movw r12,r24
  26. 25 0012 7B01 movw r14,r22
  27. 26 0014 892B or r24,r25
  28. 27 0016 01F0 breq .L6
  29. 28 0018 C0E0 ldi r28,lo8(mimeTypes)
  30. 29 001a D0E0 ldi r29,hi8(mimeTypes)
  31. 30 001c 00E0 ldi r16,0
  32. 31 001e 10E0 ldi r17,0
  33. 32 .L3:
  34. 33 0020 6881 ld r22,Y
  35. 34 0022 7981 ldd r23,Y+1
  36. 35 0024 6115 cp r22,__zero_reg__
  37. 36 0026 7105 cpc r23,__zero_reg__
  38. 37 0028 01F0 breq .L6
  39. 38 002a C601 movw r24,r12
  40. 39 002c 0E94 0000 call strcasecmp
  41. 40 0030 2696 adiw r28,6
  42. 41 0032 892B or r24,r25
  43. 42 0034 01F4 brne .L4
  44. 43 0036 86E0 ldi r24,lo8(6)
  45. 44 0038 809F mul r24,r16
  46. 45 003a F001 movw r30,r0
  47. 46 003c 819F mul r24,r17
  48. 47 003e F00D add r31,r0
  49. 48 0040 1124 clr __zero_reg__
  50. 49 0042 E050 subi r30,lo8(-(mimeTypes))
  51. 50 0044 F040 sbci r31,hi8(-(mimeTypes))
  52. 51 0046 F582 std Z+5,r15
  53. 52 0048 E482 std Z+4,r14
  54. 53 004a 80E0 ldi r24,0
  55. 54 004c 00C0 rjmp .L2
  56. 55 .L4:
  57. 56 004e 0F5F subi r16,-1
  58. 57 0050 1F4F sbci r17,-1
  59. GAS LISTING /tmp/ccAnaEr7.s page 2
  60. 58 0052 00C0 rjmp .L3
  61. 59 .L6:
  62. 60 0054 81E0 ldi r24,lo8(1)
  63. 61 .L2:
  64. 62 /* epilogue start */
  65. 63 0056 DF91 pop r29
  66. 64 0058 CF91 pop r28
  67. 65 005a 1F91 pop r17
  68. 66 005c 0F91 pop r16
  69. 67 005e FF90 pop r15
  70. 68 0060 EF90 pop r14
  71. 69 0062 DF90 pop r13
  72. 70 0064 CF90 pop r12
  73. 71 0066 0895 ret
  74. 72 .size NutSetMimeHandler, .-NutSetMimeHandler
  75. 73 .section .rodata.str1.1,"aMS",@progbits,1
  76. 74 .LC0:
  77. 75 0000 3031 3233 .string "0123456789ABCDEF"
  78. 75 3435 3637
  79. 75 3839 4142
  80. 75 4344 4546
  81. 75 00
  82. 76 .section .text.NutHttpURLEncode,"ax",@progbits
  83. 77 .global NutHttpURLEncode
  84. 78 .type NutHttpURLEncode, @function
  85. 79 NutHttpURLEncode:
  86. 80 0000 AF92 push r10
  87. 81 0002 BF92 push r11
  88. 82 0004 CF92 push r12
  89. 83 0006 DF92 push r13
  90. 84 0008 EF92 push r14
  91. 85 000a FF92 push r15
  92. 86 000c 0F93 push r16
  93. 87 000e 1F93 push r17
  94. 88 0010 CF93 push r28
  95. 89 0012 DF93 push r29
  96. 90 /* prologue: function */
  97. 91 /* frame size = 0 */
  98. 92 /* stack size = 10 */
  99. 93 .L__stack_usage = 10
  100. 94 0014 6C01 movw r12,r24
  101. 95 0016 0097 sbiw r24,0
  102. 96 0018 01F0 breq .L9
  103. 97 001a 7C01 movw r14,r24
  104. 98 001c 5C01 movw r10,r24
  105. 99 001e 00E0 ldi r16,0
  106. 100 0020 10E0 ldi r17,0
  107. 101 0022 00C0 rjmp .L10
  108. 102 .L9:
  109. 103 0024 80E0 ldi r24,0
  110. 104 0026 90E0 ldi r25,0
  111. 105 0028 00C0 rjmp .L11
  112. 106 .L14:
  113. 107 002a 8C2F mov r24,r28
  114. 108 002c 90E0 ldi r25,0
  115. 109 002e 0E94 0000 call isalnum
  116. 110 0032 892B or r24,r25
  117. GAS LISTING /tmp/ccAnaEr7.s page 3
  118. 111 0034 01F0 breq .L12
  119. 112 0036 8BED ldi r24,lo8(-37)
  120. 113 0038 8C0F add r24,r28
  121. 114 003a 8230 cpi r24,lo8(2)
  122. 115 003c 00F0 brlo .L12
  123. 116 003e 85ED ldi r24,lo8(-43)
  124. 117 0040 8C0F add r24,r28
  125. 118 0042 8230 cpi r24,lo8(2)
  126. 119 0044 00F0 brlo .L12
  127. 120 0046 86EC ldi r24,lo8(-58)
  128. 121 0048 8C0F add r24,r28
  129. 122 004a 8230 cpi r24,lo8(2)
  130. 123 004c 00F0 brlo .L12
  131. 124 004e CD33 cpi r28,lo8(61)
  132. 125 0050 01F0 breq .L12
  133. 126 0052 CF53 subi r28,lo8(-(-63))
  134. 127 0054 C230 cpi r28,lo8(2)
  135. 128 0056 00F0 brlo .L12
  136. 129 .L10:
  137. 130 0058 F501 movw r30,r10
  138. 131 005a C191 ld r28,Z+
  139. 132 005c 5F01 movw r10,r30
  140. 133 005e C111 cpse r28,__zero_reg__
  141. 134 0060 00C0 rjmp .L14
  142. 135 0062 00C0 rjmp .L33
  143. 136 .L12:
  144. 137 0064 0F5F subi r16,-1
  145. 138 0066 1F4F sbci r17,-1
  146. 139 0068 00C0 rjmp .L10
  147. 140 .L33:
  148. 141 006a F601 movw r30,r12
  149. 142 0:
  150. 143 006c 0190 ld __tmp_reg__,Z+
  151. 144 006e 0020 tst __tmp_reg__
  152. 145 0070 01F4 brne 0b
  153. 146 0072 CF01 movw r24,r30
  154. 147 0074 8C19 sub r24,r12
  155. 148 0076 9D09 sbc r25,r13
  156. 149 0078 000F lsl r16
  157. 150 007a 111F rol r17
  158. 151 007c 800F add r24,r16
  159. 152 007e 911F adc r25,r17
  160. 153 0080 0E94 0000 call malloc
  161. 154 0084 6C01 movw r12,r24
  162. 155 0086 0097 sbiw r24,0
  163. 156 0088 01F0 breq .L9
  164. 157 008a 8C01 movw r16,r24
  165. 158 008c D5E2 ldi r29,lo8(37)
  166. 159 .L15:
  167. 160 008e F701 movw r30,r14
  168. 161 0090 C191 ld r28,Z+
  169. 162 0092 7F01 movw r14,r30
  170. 163 0094 CC23 tst r28
  171. 164 0096 01F0 breq .L34
  172. 165 0098 8C2F mov r24,r28
  173. 166 009a 90E0 ldi r25,0
  174. 167 009c 0E94 0000 call isalnum
  175. GAS LISTING /tmp/ccAnaEr7.s page 4
  176. 168 00a0 892B or r24,r25
  177. 169 00a2 01F4 brne .L16
  178. 170 00a4 8BED ldi r24,lo8(-37)
  179. 171 00a6 8C0F add r24,r28
  180. 172 00a8 8230 cpi r24,lo8(2)
  181. 173 00aa 00F0 brlo .L16
  182. 174 00ac 85ED ldi r24,lo8(-43)
  183. 175 00ae 8C0F add r24,r28
  184. 176 00b0 8230 cpi r24,lo8(2)
  185. 177 00b2 00F0 brlo .L16
  186. 178 00b4 86EC ldi r24,lo8(-58)
  187. 179 00b6 8C0F add r24,r28
  188. 180 00b8 8230 cpi r24,lo8(2)
  189. 181 00ba 00F0 brlo .L16
  190. 182 00bc CD33 cpi r28,lo8(61)
  191. 183 00be 01F0 breq .L16
  192. 184 00c0 81EC ldi r24,lo8(-63)
  193. 185 00c2 8C0F add r24,r28
  194. 186 00c4 8230 cpi r24,lo8(2)
  195. 187 00c6 00F4 brsh .L17
  196. 188 .L16:
  197. 189 00c8 F801 movw r30,r16
  198. 190 00ca C083 st Z,r28
  199. 191 00cc 0F5F subi r16,-1
  200. 192 00ce 1F4F sbci r17,-1
  201. 193 00d0 00C0 rjmp .L15
  202. 194 .L17:
  203. 195 00d2 F801 movw r30,r16
  204. 196 00d4 D083 st Z,r29
  205. 197 00d6 EC2F mov r30,r28
  206. 198 00d8 E595 asr r30
  207. 199 00da E595 asr r30
  208. 200 00dc E595 asr r30
  209. 201 00de E595 asr r30
  210. 202 00e0 0E2E mov __tmp_reg__,r30
  211. 203 00e2 000C lsl r0
  212. 204 00e4 FF0B sbc r31,r31
  213. 205 00e6 E050 subi r30,lo8(-(.LC0))
  214. 206 00e8 F040 sbci r31,hi8(-(.LC0))
  215. 207 00ea 8081 ld r24,Z
  216. 208 00ec F801 movw r30,r16
  217. 209 00ee 8183 std Z+1,r24
  218. 210 00f0 EC2F mov r30,r28
  219. 211 00f2 EF70 andi r30,lo8(15)
  220. 212 00f4 0E2E mov __tmp_reg__,r30
  221. 213 00f6 000C lsl r0
  222. 214 00f8 FF0B sbc r31,r31
  223. 215 00fa E050 subi r30,lo8(-(.LC0))
  224. 216 00fc F040 sbci r31,hi8(-(.LC0))
  225. 217 00fe 8081 ld r24,Z
  226. 218 0100 F801 movw r30,r16
  227. 219 0102 8283 std Z+2,r24
  228. 220 0104 0D5F subi r16,-3
  229. 221 0106 1F4F sbci r17,-1
  230. 222 0108 00C0 rjmp .L15
  231. 223 .L34:
  232. 224 010a F801 movw r30,r16
  233. GAS LISTING /tmp/ccAnaEr7.s page 5
  234. 225 010c 1082 st Z,__zero_reg__
  235. 226 010e C601 movw r24,r12
  236. 227 .L11:
  237. 228 /* epilogue start */
  238. 229 0110 DF91 pop r29
  239. 230 0112 CF91 pop r28
  240. 231 0114 1F91 pop r17
  241. 232 0116 0F91 pop r16
  242. 233 0118 FF90 pop r15
  243. 234 011a EF90 pop r14
  244. 235 011c DF90 pop r13
  245. 236 011e CF90 pop r12
  246. 237 0120 BF90 pop r11
  247. 238 0122 AF90 pop r10
  248. 239 0124 0895 ret
  249. 240 .size NutHttpURLEncode, .-NutHttpURLEncode
  250. 241 .section .text.NutHttpProcessPostQuery,"ax",@progbits
  251. 242 .global NutHttpProcessPostQuery
  252. 243 .type NutHttpProcessPostQuery, @function
  253. 244 NutHttpProcessPostQuery:
  254. 245 0000 CF92 push r12
  255. 246 0002 DF92 push r13
  256. 247 0004 EF92 push r14
  257. 248 0006 FF92 push r15
  258. 249 0008 0F93 push r16
  259. 250 000a 1F93 push r17
  260. 251 000c CF93 push r28
  261. 252 000e DF93 push r29
  262. 253 /* prologue: function */
  263. 254 /* frame size = 0 */
  264. 255 /* stack size = 8 */
  265. 256 .L__stack_usage = 8
  266. 257 0010 6C01 movw r12,r24
  267. 258 0012 EB01 movw r28,r22
  268. 259 0014 8A85 ldd r24,Y+10
  269. 260 0016 9B85 ldd r25,Y+11
  270. 261 0018 892B or r24,r25
  271. 262 001a 01F0 breq .+2
  272. 263 001c 00C0 rjmp .L35
  273. 264 001e C114 cp r12,__zero_reg__
  274. 265 0020 D104 cpc r13,__zero_reg__
  275. 266 0022 01F4 brne .+2
  276. 267 0024 00C0 rjmp .L35
  277. 268 0026 8881 ld r24,Y
  278. 269 0028 9981 ldd r25,Y+1
  279. 270 002a 0297 sbiw r24,2
  280. 271 002c 01F0 breq .+2
  281. 272 002e 00C0 rjmp .L35
  282. 273 0030 0C81 ldd r16,Y+4
  283. 274 0032 1D81 ldd r17,Y+5
  284. 275 0034 0F5F subi r16,-1
  285. 276 0036 1F4F sbci r17,-1
  286. 277 0038 C801 movw r24,r16
  287. 278 003a 0E94 0000 call malloc
  288. 279 003e 9B87 std Y+11,r25
  289. 280 0040 8A87 std Y+10,r24
  290. 281 0042 0097 sbiw r24,0
  291. GAS LISTING /tmp/ccAnaEr7.s page 6
  292. 282 0044 01F4 brne .L39
  293. 283 0046 1F8A std Y+23,__zero_reg__
  294. 284 0048 1E8A std Y+22,__zero_reg__
  295. 285 004a 00C0 rjmp .L35
  296. 286 .L39:
  297. 287 004c A801 movw r20,r16
  298. 288 004e 60E0 ldi r22,0
  299. 289 0050 70E0 ldi r23,0
  300. 290 0052 0E94 0000 call memset
  301. 291 0056 E12C mov r14,__zero_reg__
  302. 292 0058 F12C mov r15,__zero_reg__
  303. 293 .L40:
  304. 294 005a 4C81 ldd r20,Y+4
  305. 295 005c 5D81 ldd r21,Y+5
  306. 296 005e 6E81 ldd r22,Y+6
  307. 297 0060 7F81 ldd r23,Y+7
  308. 298 0062 0A85 ldd r16,Y+10
  309. 299 0064 1B85 ldd r17,Y+11
  310. 300 0066 C701 movw r24,r14
  311. 301 0068 0F2C mov __tmp_reg__,r15
  312. 302 006a 000C lsl r0
  313. 303 006c AA0B sbc r26,r26
  314. 304 006e BB0B sbc r27,r27
  315. 305 0070 8417 cp r24,r20
  316. 306 0072 9507 cpc r25,r21
  317. 307 0074 A607 cpc r26,r22
  318. 308 0076 B707 cpc r27,r23
  319. 309 0078 04F4 brge .L60
  320. 310 007a 4E19 sub r20,r14
  321. 311 007c 5F09 sbc r21,r15
  322. 312 007e 9601 movw r18,r12
  323. 313 0080 61E0 ldi r22,lo8(1)
  324. 314 0082 70E0 ldi r23,0
  325. 315 0084 C801 movw r24,r16
  326. 316 0086 8E0D add r24,r14
  327. 317 0088 9F1D adc r25,r15
  328. 318 008a 0E94 0000 call fread
  329. 319 008e 1816 cp __zero_reg__,r24
  330. 320 0090 1906 cpc __zero_reg__,r25
  331. 321 0092 04F0 brlt .L41
  332. 322 0094 8A85 ldd r24,Y+10
  333. 323 0096 9B85 ldd r25,Y+11
  334. 324 0098 00C0 rjmp .L59
  335. 325 .L41:
  336. 326 009a E80E add r14,r24
  337. 327 009c F91E adc r15,r25
  338. 328 009e 00C0 rjmp .L40
  339. 329 .L60:
  340. 330 00a0 81E0 ldi r24,lo8(1)
  341. 331 00a2 90E0 ldi r25,0
  342. 332 00a4 9F8B std Y+23,r25
  343. 333 00a6 8E8B std Y+22,r24
  344. 334 00a8 7801 movw r14,r16
  345. 335 00aa F801 movw r30,r16
  346. 336 .L43:
  347. 337 00ac 8191 ld r24,Z+
  348. 338 00ae 8823 tst r24
  349. GAS LISTING /tmp/ccAnaEr7.s page 7
  350. 339 00b0 01F0 breq .L61
  351. 340 00b2 8632 cpi r24,lo8(38)
  352. 341 00b4 01F4 brne .L43
  353. 342 00b6 8E89 ldd r24,Y+22
  354. 343 00b8 9F89 ldd r25,Y+23
  355. 344 00ba 0196 adiw r24,1
  356. 345 00bc 9F8B std Y+23,r25
  357. 346 00be 8E8B std Y+22,r24
  358. 347 00c0 00C0 rjmp .L43
  359. 348 .L61:
  360. 349 00c2 8E89 ldd r24,Y+22
  361. 350 00c4 9F89 ldd r25,Y+23
  362. 351 00c6 880F lsl r24
  363. 352 00c8 991F rol r25
  364. 353 00ca 880F lsl r24
  365. 354 00cc 991F rol r25
  366. 355 00ce 0E94 0000 call malloc
  367. 356 00d2 9D8B std Y+21,r25
  368. 357 00d4 8C8B std Y+20,r24
  369. 358 00d6 0097 sbiw r24,0
  370. 359 00d8 01F4 brne .L46
  371. 360 00da C801 movw r24,r16
  372. 361 .L59:
  373. 362 00dc 0E94 0000 call free
  374. 363 00e0 1F8A std Y+23,__zero_reg__
  375. 364 00e2 1E8A std Y+22,__zero_reg__
  376. 365 00e4 1B86 std Y+11,__zero_reg__
  377. 366 00e6 1A86 std Y+10,__zero_reg__
  378. 367 00e8 00C0 rjmp .L35
  379. 368 .L46:
  380. 369 00ea FC01 movw r30,r24
  381. 370 00ec 1183 std Z+1,r17
  382. 371 00ee 0083 st Z,r16
  383. 372 00f0 1382 std Z+3,__zero_reg__
  384. 373 00f2 1282 std Z+2,__zero_reg__
  385. 374 00f4 22E0 ldi r18,lo8(2)
  386. 375 00f6 30E0 ldi r19,0
  387. 376 .L47:
  388. 377 00f8 F701 movw r30,r14
  389. 378 00fa 8191 ld r24,Z+
  390. 379 00fc 7F01 movw r14,r30
  391. 380 00fe 8823 tst r24
  392. 381 0100 01F0 breq .L62
  393. 382 0102 8632 cpi r24,lo8(38)
  394. 383 0104 01F4 brne .L47
  395. 384 0106 C901 movw r24,r18
  396. 385 0108 880F lsl r24
  397. 386 010a 991F rol r25
  398. 387 010c EC89 ldd r30,Y+20
  399. 388 010e FD89 ldd r31,Y+21
  400. 389 0110 E80F add r30,r24
  401. 390 0112 F91F adc r31,r25
  402. 391 0114 F182 std Z+1,r15
  403. 392 0116 E082 st Z,r14
  404. 393 0118 4C89 ldd r20,Y+20
  405. 394 011a 5D89 ldd r21,Y+21
  406. 395 011c FA01 movw r30,r20
  407. GAS LISTING /tmp/ccAnaEr7.s page 8
  408. 396 011e E80F add r30,r24
  409. 397 0120 F91F adc r31,r25
  410. 398 0122 1382 std Z+3,__zero_reg__
  411. 399 0124 1282 std Z+2,__zero_reg__
  412. 400 0126 F701 movw r30,r14
  413. 401 0128 3197 sbiw r30,1
  414. 402 012a 1082 st Z,__zero_reg__
  415. 403 012c 2E5F subi r18,-2
  416. 404 012e 3F4F sbci r19,-1
  417. 405 0130 00C0 rjmp .L47
  418. 406 .L62:
  419. 407 0132 00E0 ldi r16,0
  420. 408 0134 10E0 ldi r17,0
  421. 409 0136 E12C mov r14,__zero_reg__
  422. 410 0138 F12C mov r15,__zero_reg__
  423. 411 .L50:
  424. 412 013a 8E89 ldd r24,Y+22
  425. 413 013c 9F89 ldd r25,Y+23
  426. 414 013e E816 cp r14,r24
  427. 415 0140 F906 cpc r15,r25
  428. 416 0142 04F4 brge .L35
  429. 417 0144 8C89 ldd r24,Y+20
  430. 418 0146 9D89 ldd r25,Y+21
  431. 419 0148 FC01 movw r30,r24
  432. 420 014a E00F add r30,r16
  433. 421 014c F11F adc r31,r17
  434. 422 014e 0190 ld __tmp_reg__,Z+
  435. 423 0150 F081 ld r31,Z
  436. 424 0152 E02D mov r30,__tmp_reg__
  437. 425 .L51:
  438. 426 0154 DF01 movw r26,r30
  439. 427 0156 2191 ld r18,Z+
  440. 428 0158 2223 tst r18
  441. 429 015a 01F0 breq .L52
  442. 430 015c 2D33 cpi r18,lo8(61)
  443. 431 015e 01F4 brne .L51
  444. 432 0160 9801 movw r18,r16
  445. 433 0162 2E5F subi r18,-2
  446. 434 0164 3F4F sbci r19,-1
  447. 435 0166 FC01 movw r30,r24
  448. 436 0168 E20F add r30,r18
  449. 437 016a F31F adc r31,r19
  450. 438 016c AD01 movw r20,r26
  451. 439 016e 4F5F subi r20,-1
  452. 440 0170 5F4F sbci r21,-1
  453. 441 0172 5183 std Z+1,r21
  454. 442 0174 4083 st Z,r20
  455. 443 0176 1C92 st X,__zero_reg__
  456. 444 0178 8C89 ldd r24,Y+20
  457. 445 017a 9D89 ldd r25,Y+21
  458. 446 017c FC01 movw r30,r24
  459. 447 017e E20F add r30,r18
  460. 448 0180 F31F adc r31,r19
  461. 449 0182 8081 ld r24,Z
  462. 450 0184 9181 ldd r25,Z+1
  463. 451 0186 0E94 0000 call NutHttpURLDecode
  464. 452 .L52:
  465. GAS LISTING /tmp/ccAnaEr7.s page 9
  466. 453 018a EC89 ldd r30,Y+20
  467. 454 018c FD89 ldd r31,Y+21
  468. 455 018e E00F add r30,r16
  469. 456 0190 F11F adc r31,r17
  470. 457 0192 8081 ld r24,Z
  471. 458 0194 9181 ldd r25,Z+1
  472. 459 0196 0E94 0000 call NutHttpURLDecode
  473. 460 019a FFEF ldi r31,-1
  474. 461 019c EF1A sub r14,r31
  475. 462 019e FF0A sbc r15,r31
  476. 463 01a0 0C5F subi r16,-4
  477. 464 01a2 1F4F sbci r17,-1
  478. 465 01a4 00C0 rjmp .L50
  479. 466 .L35:
  480. 467 /* epilogue start */
  481. 468 01a6 DF91 pop r29
  482. 469 01a8 CF91 pop r28
  483. 470 01aa 1F91 pop r17
  484. 471 01ac 0F91 pop r16
  485. 472 01ae FF90 pop r15
  486. 473 01b0 EF90 pop r14
  487. 474 01b2 DF90 pop r13
  488. 475 01b4 CF90 pop r12
  489. 476 01b6 0895 ret
  490. 477 .size NutHttpProcessPostQuery, .-NutHttpProcessPostQuery
  491. 478 .section .text.NutHttpGetParameter,"ax",@progbits
  492. 479 .global NutHttpGetParameter
  493. 480 .type NutHttpGetParameter, @function
  494. 481 NutHttpGetParameter:
  495. 482 0000 8F92 push r8
  496. 483 0002 9F92 push r9
  497. 484 0004 AF92 push r10
  498. 485 0006 BF92 push r11
  499. 486 0008 CF92 push r12
  500. 487 000a DF92 push r13
  501. 488 000c EF92 push r14
  502. 489 000e FF92 push r15
  503. 490 0010 0F93 push r16
  504. 491 0012 1F93 push r17
  505. 492 0014 CF93 push r28
  506. 493 0016 DF93 push r29
  507. 494 /* prologue: function */
  508. 495 /* frame size = 0 */
  509. 496 /* stack size = 12 */
  510. 497 .L__stack_usage = 12
  511. 498 0018 4C01 movw r8,r24
  512. 499 001a 5B01 movw r10,r22
  513. 500 001c FC01 movw r30,r24
  514. 501 001e C688 ldd r12,Z+22
  515. 502 0020 D788 ldd r13,Z+23
  516. 503 0022 C0E0 ldi r28,0
  517. 504 0024 D0E0 ldi r29,0
  518. 505 0026 E12C mov r14,__zero_reg__
  519. 506 0028 F12C mov r15,__zero_reg__
  520. 507 .L64:
  521. 508 002a EC14 cp r14,r12
  522. 509 002c FD04 cpc r15,r13
  523. GAS LISTING /tmp/ccAnaEr7.s page 10
  524. 510 002e 04F4 brge .L68
  525. 511 0030 F401 movw r30,r8
  526. 512 0032 0489 ldd r16,Z+20
  527. 513 0034 1589 ldd r17,Z+21
  528. 514 0036 0C0F add r16,r28
  529. 515 0038 1D1F adc r17,r29
  530. 516 003a B501 movw r22,r10
  531. 517 003c F801 movw r30,r16
  532. 518 003e 8081 ld r24,Z
  533. 519 0040 9181 ldd r25,Z+1
  534. 520 0042 0E94 0000 call strcmp
  535. 521 0046 2496 adiw r28,4
  536. 522 0048 892B or r24,r25
  537. 523 004a 01F4 brne .L65
  538. 524 004c F801 movw r30,r16
  539. 525 004e 8281 ldd r24,Z+2
  540. 526 0050 9381 ldd r25,Z+3
  541. 527 0052 00C0 rjmp .L66
  542. 528 .L65:
  543. 529 0054 FFEF ldi r31,-1
  544. 530 0056 EF1A sub r14,r31
  545. 531 0058 FF0A sbc r15,r31
  546. 532 005a 00C0 rjmp .L64
  547. 533 .L68:
  548. 534 005c 80E0 ldi r24,0
  549. 535 005e 90E0 ldi r25,0
  550. 536 .L66:
  551. 537 /* epilogue start */
  552. 538 0060 DF91 pop r29
  553. 539 0062 CF91 pop r28
  554. 540 0064 1F91 pop r17
  555. 541 0066 0F91 pop r16
  556. 542 0068 FF90 pop r15
  557. 543 006a EF90 pop r14
  558. 544 006c DF90 pop r13
  559. 545 006e CF90 pop r12
  560. 546 0070 BF90 pop r11
  561. 547 0072 AF90 pop r10
  562. 548 0074 9F90 pop r9
  563. 549 0076 8F90 pop r8
  564. 550 0078 0895 ret
  565. 551 .size NutHttpGetParameter, .-NutHttpGetParameter
  566. 552 .section .text.NutHttpGetParameterCount,"ax",@progbits
  567. 553 .global NutHttpGetParameterCount
  568. 554 .type NutHttpGetParameterCount, @function
  569. 555 NutHttpGetParameterCount:
  570. 556 /* prologue: function */
  571. 557 /* frame size = 0 */
  572. 558 /* stack size = 0 */
  573. 559 .L__stack_usage = 0
  574. 560 0000 FC01 movw r30,r24
  575. 561 0002 8689 ldd r24,Z+22
  576. 562 0004 9789 ldd r25,Z+23
  577. 563 0006 0895 ret
  578. 564 .size NutHttpGetParameterCount, .-NutHttpGetParameterCount
  579. 565 .section .text.NutHttpGetParameterName,"ax",@progbits
  580. 566 .global NutHttpGetParameterName
  581. GAS LISTING /tmp/ccAnaEr7.s page 11
  582. 567 .type NutHttpGetParameterName, @function
  583. 568 NutHttpGetParameterName:
  584. 569 /* prologue: function */
  585. 570 /* frame size = 0 */
  586. 571 /* stack size = 0 */
  587. 572 .L__stack_usage = 0
  588. 573 0000 77FD sbrc r23,7
  589. 574 0002 00C0 rjmp .L73
  590. 575 0004 DC01 movw r26,r24
  591. 576 0006 5696 adiw r26,22
  592. 577 0008 2D91 ld r18,X+
  593. 578 000a 3C91 ld r19,X
  594. 579 000c 5797 sbiw r26,22+1
  595. 580 000e 6217 cp r22,r18
  596. 581 0010 7307 cpc r23,r19
  597. 582 0012 04F4 brge .L73
  598. 583 0014 660F lsl r22
  599. 584 0016 771F rol r23
  600. 585 0018 660F lsl r22
  601. 586 001a 771F rol r23
  602. 587 001c 5496 adiw r26,20
  603. 588 001e ED91 ld r30,X+
  604. 589 0020 FC91 ld r31,X
  605. 590 0022 5597 sbiw r26,20+1
  606. 591 0024 E60F add r30,r22
  607. 592 0026 F71F adc r31,r23
  608. 593 0028 8081 ld r24,Z
  609. 594 002a 9181 ldd r25,Z+1
  610. 595 002c 0895 ret
  611. 596 .L73:
  612. 597 002e 80E0 ldi r24,0
  613. 598 0030 90E0 ldi r25,0
  614. 599 0032 0895 ret
  615. 600 .size NutHttpGetParameterName, .-NutHttpGetParameterName
  616. 601 .section .text.NutHttpGetParameterValue,"ax",@progbits
  617. 602 .global NutHttpGetParameterValue
  618. 603 .type NutHttpGetParameterValue, @function
  619. 604 NutHttpGetParameterValue:
  620. 605 /* prologue: function */
  621. 606 /* frame size = 0 */
  622. 607 /* stack size = 0 */
  623. 608 .L__stack_usage = 0
  624. 609 0000 77FD sbrc r23,7
  625. 610 0002 00C0 rjmp .L77
  626. 611 0004 DC01 movw r26,r24
  627. 612 0006 5696 adiw r26,22
  628. 613 0008 2D91 ld r18,X+
  629. 614 000a 3C91 ld r19,X
  630. 615 000c 5797 sbiw r26,22+1
  631. 616 000e 6217 cp r22,r18
  632. 617 0010 7307 cpc r23,r19
  633. 618 0012 04F4 brge .L77
  634. 619 0014 660F lsl r22
  635. 620 0016 771F rol r23
  636. 621 0018 660F lsl r22
  637. 622 001a 771F rol r23
  638. 623 001c 5496 adiw r26,20
  639. GAS LISTING /tmp/ccAnaEr7.s page 12
  640. 624 001e ED91 ld r30,X+
  641. 625 0020 FC91 ld r31,X
  642. 626 0022 5597 sbiw r26,20+1
  643. 627 0024 E60F add r30,r22
  644. 628 0026 F71F adc r31,r23
  645. 629 0028 8281 ldd r24,Z+2
  646. 630 002a 9381 ldd r25,Z+3
  647. 631 002c 0895 ret
  648. 632 .L77:
  649. 633 002e 80E0 ldi r24,0
  650. 634 0030 90E0 ldi r25,0
  651. 635 0032 0895 ret
  652. 636 .size NutHttpGetParameterValue, .-NutHttpGetParameterValue
  653. 637 .ident "GCC: (GNU) 5.3.0"
  654. 638 .global __do_copy_data
  655. GAS LISTING /tmp/ccAnaEr7.s page 13
  656. DEFINED SYMBOLS
  657. *ABS*:0000000000000000 httpopt.c
  658. /tmp/ccAnaEr7.s:2 *ABS*:000000000000003e __SP_H__
  659. /tmp/ccAnaEr7.s:3 *ABS*:000000000000003d __SP_L__
  660. /tmp/ccAnaEr7.s:4 *ABS*:000000000000003f __SREG__
  661. /tmp/ccAnaEr7.s:5 *ABS*:000000000000003b __RAMPZ__
  662. /tmp/ccAnaEr7.s:6 *ABS*:0000000000000000 __tmp_reg__
  663. /tmp/ccAnaEr7.s:7 *ABS*:0000000000000001 __zero_reg__
  664. /tmp/ccAnaEr7.s:11 .text.NutSetMimeHandler:0000000000000000 NutSetMimeHandler
  665. /tmp/ccAnaEr7.s:79 .text.NutHttpURLEncode:0000000000000000 NutHttpURLEncode
  666. /tmp/ccAnaEr7.s:244 .text.NutHttpProcessPostQuery:0000000000000000 NutHttpProcessPostQuery
  667. /tmp/ccAnaEr7.s:481 .text.NutHttpGetParameter:0000000000000000 NutHttpGetParameter
  668. /tmp/ccAnaEr7.s:555 .text.NutHttpGetParameterCount:0000000000000000 NutHttpGetParameterCount
  669. /tmp/ccAnaEr7.s:568 .text.NutHttpGetParameterName:0000000000000000 NutHttpGetParameterName
  670. /tmp/ccAnaEr7.s:604 .text.NutHttpGetParameterValue:0000000000000000 NutHttpGetParameterValue
  671. UNDEFINED SYMBOLS
  672. mimeTypes
  673. strcasecmp
  674. isalnum
  675. malloc
  676. memset
  677. fread
  678. free
  679. NutHttpURLDecode
  680. strcmp
  681. __do_copy_data