mod_redir.lst 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328
  1. GAS LISTING /tmp/ccv2dJ3o.s page 1
  2. 1 .file "mod_redir.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.HttpLocationLookup,"ax",@progbits
  10. 9 .global HttpLocationLookup
  11. 10 .type HttpLocationLookup, @function
  12. 11 HttpLocationLookup:
  13. 12 0000 0F93 push r16
  14. 13 0002 1F93 push r17
  15. 14 0004 CF93 push r28
  16. 15 0006 DF93 push r29
  17. 16 /* prologue: function */
  18. 17 /* frame size = 0 */
  19. 18 /* stack size = 4 */
  20. 19 .L__stack_usage = 4
  21. 20 0008 8C01 movw r16,r24
  22. 21 000a C091 0000 lds r28,locationList
  23. 22 000e D091 0000 lds r29,locationList+1
  24. 23 .L2:
  25. 24 0012 2097 sbiw r28,0
  26. 25 0014 01F0 breq .L4
  27. 26 0016 B801 movw r22,r16
  28. 27 0018 8C81 ldd r24,Y+4
  29. 28 001a 9D81 ldd r25,Y+5
  30. 29 001c 0E94 0000 call strcasecmp
  31. 30 0020 1816 cp __zero_reg__,r24
  32. 31 0022 1906 cpc __zero_reg__,r25
  33. 32 0024 04F0 brlt .L3
  34. 33 0026 892B or r24,r25
  35. 34 0028 01F0 breq .L4
  36. 35 002a C0E0 ldi r28,0
  37. 36 002c D0E0 ldi r29,0
  38. 37 002e 00C0 rjmp .L4
  39. 38 .L3:
  40. 39 0030 0A80 ldd __tmp_reg__,Y+2
  41. 40 0032 DB81 ldd r29,Y+3
  42. 41 0034 C02D mov r28,__tmp_reg__
  43. 42 0036 00C0 rjmp .L2
  44. 43 .L4:
  45. 44 0038 CE01 movw r24,r28
  46. 45 /* epilogue start */
  47. 46 003a DF91 pop r29
  48. 47 003c CF91 pop r28
  49. 48 003e 1F91 pop r17
  50. 49 0040 0F91 pop r16
  51. 50 0042 0895 ret
  52. 51 .size HttpLocationLookup, .-HttpLocationLookup
  53. 52 .section .text.HttpLocationRedir,"ax",@progbits
  54. 53 .global HttpLocationRedir
  55. 54 .type HttpLocationRedir, @function
  56. 55 HttpLocationRedir:
  57. 56 0000 CF93 push r28
  58. 57 0002 DF93 push r29
  59. GAS LISTING /tmp/ccv2dJ3o.s page 2
  60. 58 /* prologue: function */
  61. 59 /* frame size = 0 */
  62. 60 /* stack size = 2 */
  63. 61 .L__stack_usage = 2
  64. 62 0004 EC01 movw r28,r24
  65. 63 0006 8C81 ldd r24,Y+4
  66. 64 0008 9D81 ldd r25,Y+5
  67. 65 000a 0E94 0000 call HttpLocationLookup
  68. 66 000e FC01 movw r30,r24
  69. 67 0010 892B or r24,r25
  70. 68 0012 01F0 breq .L10
  71. 69 0014 1F92 push __zero_reg__
  72. 70 0016 1F92 push __zero_reg__
  73. 71 0018 8781 ldd r24,Z+7
  74. 72 001a 8F93 push r24
  75. 73 001c 8681 ldd r24,Z+6
  76. 74 001e 8F93 push r24
  77. 75 0020 8185 ldd r24,Z+9
  78. 76 0022 8F93 push r24
  79. 77 0024 8085 ldd r24,Z+8
  80. 78 0026 8F93 push r24
  81. 79 0028 DF93 push r29
  82. 80 002a CF93 push r28
  83. 81 002c 0E94 0000 call HttpSendRedirection
  84. 82 0030 8DB7 in r24,__SP_L__
  85. 83 0032 9EB7 in r25,__SP_H__
  86. 84 0034 0896 adiw r24,8
  87. 85 0036 0FB6 in __tmp_reg__,__SREG__
  88. 86 0038 F894 cli
  89. 87 003a 9EBF out __SP_H__,r25
  90. 88 003c 0FBE out __SREG__,__tmp_reg__
  91. 89 003e 8DBF out __SP_L__,r24
  92. 90 0040 80E0 ldi r24,0
  93. 91 0042 90E0 ldi r25,0
  94. 92 0044 00C0 rjmp .L9
  95. 93 .L10:
  96. 94 0046 8FEF ldi r24,lo8(-1)
  97. 95 0048 9FEF ldi r25,lo8(-1)
  98. 96 .L9:
  99. 97 /* epilogue start */
  100. 98 004a DF91 pop r29
  101. 99 004c CF91 pop r28
  102. 100 004e 0895 ret
  103. 101 .size HttpLocationRedir, .-HttpLocationRedir
  104. 102 .section .text.HttpRegisterRedir,"ax",@progbits
  105. 103 .global HttpRegisterRedir
  106. 104 .type HttpRegisterRedir, @function
  107. 105 HttpRegisterRedir:
  108. 106 0000 8F92 push r8
  109. 107 0002 9F92 push r9
  110. 108 0004 AF92 push r10
  111. 109 0006 BF92 push r11
  112. 110 0008 CF92 push r12
  113. 111 000a DF92 push r13
  114. 112 000c EF92 push r14
  115. 113 000e FF92 push r15
  116. 114 0010 0F93 push r16
  117. GAS LISTING /tmp/ccv2dJ3o.s page 3
  118. 115 0012 1F93 push r17
  119. 116 0014 CF93 push r28
  120. 117 0016 DF93 push r29
  121. 118 /* prologue: function */
  122. 119 /* frame size = 0 */
  123. 120 /* stack size = 12 */
  124. 121 .L__stack_usage = 12
  125. 122 0018 4C01 movw r8,r24
  126. 123 001a 5B01 movw r10,r22
  127. 124 001c 6A01 movw r12,r20
  128. 125 001e E090 0000 lds r14,locationList
  129. 126 0022 F090 0000 lds r15,locationList+1
  130. 127 0026 8701 movw r16,r14
  131. 128 0028 8FEF ldi r24,lo8(-1)
  132. 129 002a 9FEF ldi r25,lo8(-1)
  133. 130 .L12:
  134. 131 002c 0115 cp r16,__zero_reg__
  135. 132 002e 1105 cpc r17,__zero_reg__
  136. 133 0030 01F0 breq .L33
  137. 134 0032 B401 movw r22,r8
  138. 135 0034 F801 movw r30,r16
  139. 136 0036 8481 ldd r24,Z+4
  140. 137 0038 9581 ldd r25,Z+5
  141. 138 003a 0E94 0000 call strcasecmp
  142. 139 003e 0097 sbiw r24,0
  143. 140 0040 01F4 brne .L13
  144. 141 0042 F801 movw r30,r16
  145. 142 0044 8681 ldd r24,Z+6
  146. 143 0046 9781 ldd r25,Z+7
  147. 144 0048 0E94 0000 call free
  148. 145 004c C501 movw r24,r10
  149. 146 004e 0E94 0000 call strdup
  150. 147 0052 F801 movw r30,r16
  151. 148 0054 9783 std Z+7,r25
  152. 149 0056 8683 std Z+6,r24
  153. 150 0058 D186 std Z+9,r13
  154. 151 005a C086 std Z+8,r12
  155. 152 005c 00C0 rjmp .L30
  156. 153 .L13:
  157. 154 005e 97FD sbrc r25,7
  158. 155 0060 00C0 rjmp .L15
  159. 156 0062 F801 movw r30,r16
  160. 157 0064 0281 ldd r16,Z+2
  161. 158 0066 1381 ldd r17,Z+3
  162. 159 0068 00C0 rjmp .L12
  163. 160 .L33:
  164. 161 006a 892B or r24,r25
  165. 162 006c 01F4 brne .+2
  166. 163 006e 00C0 rjmp .L32
  167. 164 .L15:
  168. 165 0070 6CE0 ldi r22,lo8(12)
  169. 166 0072 70E0 ldi r23,0
  170. 167 0074 81E0 ldi r24,lo8(1)
  171. 168 0076 90E0 ldi r25,0
  172. 169 0078 0E94 0000 call calloc
  173. 170 007c EC01 movw r28,r24
  174. 171 007e 892B or r24,r25
  175. GAS LISTING /tmp/ccv2dJ3o.s page 4
  176. 172 0080 01F4 brne .+2
  177. 173 0082 00C0 rjmp .L32
  178. 174 0084 C401 movw r24,r8
  179. 175 0086 0E94 0000 call strdup
  180. 176 008a 4C01 movw r8,r24
  181. 177 008c 9D83 std Y+5,r25
  182. 178 008e 8C83 std Y+4,r24
  183. 179 0090 892B or r24,r25
  184. 180 0092 01F4 brne .+2
  185. 181 0094 00C0 rjmp .L18
  186. 182 0096 C501 movw r24,r10
  187. 183 0098 0E94 0000 call strdup
  188. 184 009c 9F83 std Y+7,r25
  189. 185 009e 8E83 std Y+6,r24
  190. 186 00a0 892B or r24,r25
  191. 187 00a2 01F4 brne .+2
  192. 188 00a4 00C0 rjmp .L19
  193. 189 00a6 D986 std Y+9,r13
  194. 190 00a8 C886 std Y+8,r12
  195. 191 00aa 0115 cp r16,__zero_reg__
  196. 192 00ac 1105 cpc r17,__zero_reg__
  197. 193 00ae 01F0 breq .L20
  198. 194 00b0 F801 movw r30,r16
  199. 195 00b2 8081 ld r24,Z
  200. 196 00b4 9181 ldd r25,Z+1
  201. 197 00b6 0097 sbiw r24,0
  202. 198 00b8 01F4 brne .L21
  203. 199 00ba E114 cp r14,__zero_reg__
  204. 200 00bc F104 cpc r15,__zero_reg__
  205. 201 00be 01F0 breq .L22
  206. 202 00c0 F701 movw r30,r14
  207. 203 00c2 D183 std Z+1,r29
  208. 204 00c4 C083 st Z,r28
  209. 205 00c6 00C0 rjmp .L23
  210. 206 .L22:
  211. 207 00c8 D093 0000 sts locationList+2+1,r29
  212. 208 00cc C093 0000 sts locationList+2,r28
  213. 209 .L23:
  214. 210 00d0 1982 std Y+1,__zero_reg__
  215. 211 00d2 1882 st Y,__zero_reg__
  216. 212 00d4 FB82 std Y+3,r15
  217. 213 00d6 EA82 std Y+2,r14
  218. 214 00d8 D093 0000 sts locationList+1,r29
  219. 215 00dc C093 0000 sts locationList,r28
  220. 216 00e0 00C0 rjmp .L24
  221. 217 .L21:
  222. 218 00e2 9983 std Y+1,r25
  223. 219 00e4 8883 st Y,r24
  224. 220 00e6 F801 movw r30,r16
  225. 221 00e8 D183 std Z+1,r29
  226. 222 00ea C083 st Z,r28
  227. 223 00ec E881 ld r30,Y
  228. 224 00ee F981 ldd r31,Y+1
  229. 225 00f0 D383 std Z+3,r29
  230. 226 00f2 C283 std Z+2,r28
  231. 227 00f4 1B83 std Y+3,r17
  232. 228 00f6 0A83 std Y+2,r16
  233. GAS LISTING /tmp/ccv2dJ3o.s page 5
  234. 229 00f8 00C0 rjmp .L24
  235. 230 .L20:
  236. 231 00fa E091 0000 lds r30,locationList+2
  237. 232 00fe F091 0000 lds r31,locationList+2+1
  238. 233 0102 3097 sbiw r30,0
  239. 234 0104 01F0 breq .L25
  240. 235 0106 D383 std Z+3,r29
  241. 236 0108 C283 std Z+2,r28
  242. 237 010a 00C0 rjmp .L26
  243. 238 .L25:
  244. 239 010c D093 0000 sts locationList+1,r29
  245. 240 0110 C093 0000 sts locationList,r28
  246. 241 .L26:
  247. 242 0114 F983 std Y+1,r31
  248. 243 0116 E883 st Y,r30
  249. 244 0118 1B82 std Y+3,__zero_reg__
  250. 245 011a 1A82 std Y+2,__zero_reg__
  251. 246 011c D093 0000 sts locationList+2+1,r29
  252. 247 0120 C093 0000 sts locationList+2,r28
  253. 248 .L24:
  254. 249 0124 80E0 ldi r24,lo8(gs(HttpLocationRedir))
  255. 250 0126 90E0 ldi r25,hi8(gs(HttpLocationRedir))
  256. 251 0128 9093 0000 sts httpd_loc_redirector+1,r25
  257. 252 012c 8093 0000 sts httpd_loc_redirector,r24
  258. 253 .L30:
  259. 254 0130 80E0 ldi r24,0
  260. 255 0132 90E0 ldi r25,0
  261. 256 0134 00C0 rjmp .L14
  262. 257 .L19:
  263. 258 0136 C401 movw r24,r8
  264. 259 0138 00C0 rjmp .L31
  265. 260 .L18:
  266. 261 013a CE01 movw r24,r28
  267. 262 .L31:
  268. 263 013c 0E94 0000 call free
  269. 264 .L32:
  270. 265 0140 8FEF ldi r24,lo8(-1)
  271. 266 0142 9FEF ldi r25,lo8(-1)
  272. 267 .L14:
  273. 268 /* epilogue start */
  274. 269 0144 DF91 pop r29
  275. 270 0146 CF91 pop r28
  276. 271 0148 1F91 pop r17
  277. 272 014a 0F91 pop r16
  278. 273 014c FF90 pop r15
  279. 274 014e EF90 pop r14
  280. 275 0150 DF90 pop r13
  281. 276 0152 CF90 pop r12
  282. 277 0154 BF90 pop r11
  283. 278 0156 AF90 pop r10
  284. 279 0158 9F90 pop r9
  285. 280 015a 8F90 pop r8
  286. 281 015c 0895 ret
  287. 282 .size HttpRegisterRedir, .-HttpRegisterRedir
  288. 283 .local locationList
  289. 284 .comm locationList,4,1
  290. 285 .ident "GCC: (GNU) 5.3.0"
  291. GAS LISTING /tmp/ccv2dJ3o.s page 6
  292. 286 .global __do_clear_bss
  293. GAS LISTING /tmp/ccv2dJ3o.s page 7
  294. DEFINED SYMBOLS
  295. *ABS*:0000000000000000 mod_redir.c
  296. /tmp/ccv2dJ3o.s:2 *ABS*:000000000000003e __SP_H__
  297. /tmp/ccv2dJ3o.s:3 *ABS*:000000000000003d __SP_L__
  298. /tmp/ccv2dJ3o.s:4 *ABS*:000000000000003f __SREG__
  299. /tmp/ccv2dJ3o.s:5 *ABS*:000000000000003b __RAMPZ__
  300. /tmp/ccv2dJ3o.s:6 *ABS*:0000000000000000 __tmp_reg__
  301. /tmp/ccv2dJ3o.s:7 *ABS*:0000000000000001 __zero_reg__
  302. /tmp/ccv2dJ3o.s:11 .text.HttpLocationLookup:0000000000000000 HttpLocationLookup
  303. .bss:0000000000000000 locationList
  304. /tmp/ccv2dJ3o.s:55 .text.HttpLocationRedir:0000000000000000 HttpLocationRedir
  305. /tmp/ccv2dJ3o.s:105 .text.HttpRegisterRedir:0000000000000000 HttpRegisterRedir
  306. UNDEFINED SYMBOLS
  307. strcasecmp
  308. HttpSendRedirection
  309. free
  310. strdup
  311. calloc
  312. httpd_loc_redirector
  313. __do_clear_bss