asctime.lst 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. GAS LISTING /tmp/ccvEJZh4.s page 1
  2. 1 .file "asctime.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 .rodata.str1.1,"aMS",@progbits,1
  10. 9 .LC0:
  11. 10 0000 3F3F 3F00 .string "???"
  12. 11 .LC1:
  13. 12 0004 3F3F 3F20 .string "??? ??? ?? ??:??:?? ????\n"
  14. 12 3F3F 3F20
  15. 12 3F3F 203F
  16. 12 3F3A 3F3F
  17. 12 3A3F 3F20
  18. 13 .LC2:
  19. 14 001e 252E 3373 .string "%.3s %.3s%3d %2.2d:%2.2d:%2.2d %4d\n"
  20. 14 2025 2E33
  21. 14 7325 3364
  22. 14 2025 322E
  23. 14 3264 3A25
  24. 15 .section .text.asctime_r,"ax",@progbits
  25. 16 .global asctime_r
  26. 17 .type asctime_r, @function
  27. 18 asctime_r:
  28. 19 0000 CF93 push r28
  29. 20 0002 DF93 push r29
  30. 21 /* prologue: function */
  31. 22 /* frame size = 0 */
  32. 23 /* stack size = 2 */
  33. 24 .L__stack_usage = 2
  34. 25 0004 FC01 movw r30,r24
  35. 26 0006 EB01 movw r28,r22
  36. 27 0008 892B or r24,r25
  37. 28 000a 01F4 brne .L2
  38. 29 000c 86E1 ldi r24,lo8(22)
  39. 30 000e 90E0 ldi r25,0
  40. 31 0010 9093 0000 sts errno+1,r25
  41. 32 0014 8093 0000 sts errno,r24
  42. 33 0018 2097 sbiw r28,0
  43. 34 001a 01F4 brne .+2
  44. 35 001c 00C0 rjmp .L7
  45. 36 001e 60E0 ldi r22,lo8(.LC1)
  46. 37 0020 70E0 ldi r23,hi8(.LC1)
  47. 38 0022 CE01 movw r24,r28
  48. 39 0024 0E94 0000 call strcpy
  49. 40 0028 00C0 rjmp .L10
  50. 41 .L2:
  51. 42 002a 8485 ldd r24,Z+12
  52. 43 002c 9585 ldd r25,Z+13
  53. 44 002e 8730 cpi r24,7
  54. 45 0030 9105 cpc r25,__zero_reg__
  55. 46 0032 00F4 brsh .L8
  56. 47 0034 9C01 movw r18,r24
  57. 48 0036 220F lsl r18
  58. 49 0038 331F rol r19
  59. GAS LISTING /tmp/ccvEJZh4.s page 2
  60. 50 003a 820F add r24,r18
  61. 51 003c 931F adc r25,r19
  62. 52 003e 8050 subi r24,lo8(-(wday_name.2429))
  63. 53 0040 9040 sbci r25,hi8(-(wday_name.2429))
  64. 54 0042 00C0 rjmp .L4
  65. 55 .L8:
  66. 56 0044 80E0 ldi r24,lo8(.LC0)
  67. 57 0046 90E0 ldi r25,hi8(.LC0)
  68. 58 .L4:
  69. 59 0048 2085 ldd r18,Z+8
  70. 60 004a 3185 ldd r19,Z+9
  71. 61 004c 2C30 cpi r18,12
  72. 62 004e 3105 cpc r19,__zero_reg__
  73. 63 0050 00F4 brsh .L9
  74. 64 0052 A901 movw r20,r18
  75. 65 0054 440F lsl r20
  76. 66 0056 551F rol r21
  77. 67 0058 240F add r18,r20
  78. 68 005a 351F adc r19,r21
  79. 69 005c 2050 subi r18,lo8(-(mon_name.2430))
  80. 70 005e 3040 sbci r19,hi8(-(mon_name.2430))
  81. 71 0060 00C0 rjmp .L5
  82. 72 .L9:
  83. 73 0062 20E0 ldi r18,lo8(.LC0)
  84. 74 0064 30E0 ldi r19,hi8(.LC0)
  85. 75 .L5:
  86. 76 0066 2097 sbiw r28,0
  87. 77 0068 01F0 breq .L6
  88. 78 006a 4285 ldd r20,Z+10
  89. 79 006c 5385 ldd r21,Z+11
  90. 80 006e 4459 subi r20,-108
  91. 81 0070 584F sbci r21,-8
  92. 82 0072 5F93 push r21
  93. 83 0074 4F93 push r20
  94. 84 0076 4181 ldd r20,Z+1
  95. 85 0078 4F93 push r20
  96. 86 007a 4081 ld r20,Z
  97. 87 007c 4F93 push r20
  98. 88 007e 4381 ldd r20,Z+3
  99. 89 0080 4F93 push r20
  100. 90 0082 4281 ldd r20,Z+2
  101. 91 0084 4F93 push r20
  102. 92 0086 4581 ldd r20,Z+5
  103. 93 0088 4F93 push r20
  104. 94 008a 4481 ldd r20,Z+4
  105. 95 008c 4F93 push r20
  106. 96 008e 4781 ldd r20,Z+7
  107. 97 0090 4F93 push r20
  108. 98 0092 4681 ldd r20,Z+6
  109. 99 0094 4F93 push r20
  110. 100 0096 3F93 push r19
  111. 101 0098 2F93 push r18
  112. 102 009a 9F93 push r25
  113. 103 009c 8F93 push r24
  114. 104 009e 80E0 ldi r24,lo8(.LC2)
  115. 105 00a0 90E0 ldi r25,hi8(.LC2)
  116. 106 00a2 9F93 push r25
  117. GAS LISTING /tmp/ccvEJZh4.s page 3
  118. 107 00a4 8F93 push r24
  119. 108 00a6 DF93 push r29
  120. 109 00a8 CF93 push r28
  121. 110 00aa 0E94 0000 call sprintf
  122. 111 00ae 8DB7 in r24,__SP_L__
  123. 112 00b0 9EB7 in r25,__SP_H__
  124. 113 00b2 4296 adiw r24,18
  125. 114 00b4 0FB6 in __tmp_reg__,__SREG__
  126. 115 00b6 F894 cli
  127. 116 00b8 9EBF out __SP_H__,r25
  128. 117 00ba 0FBE out __SREG__,__tmp_reg__
  129. 118 00bc 8DBF out __SP_L__,r24
  130. 119 .L10:
  131. 120 00be CE01 movw r24,r28
  132. 121 00c0 00C0 rjmp .L3
  133. 122 .L6:
  134. 123 00c2 86E1 ldi r24,lo8(22)
  135. 124 00c4 90E0 ldi r25,0
  136. 125 00c6 9093 0000 sts errno+1,r25
  137. 126 00ca 8093 0000 sts errno,r24
  138. 127 .L7:
  139. 128 00ce 80E0 ldi r24,0
  140. 129 00d0 90E0 ldi r25,0
  141. 130 .L3:
  142. 131 /* epilogue start */
  143. 132 00d2 DF91 pop r29
  144. 133 00d4 CF91 pop r28
  145. 134 00d6 0895 ret
  146. 135 .size asctime_r, .-asctime_r
  147. 136 .section .text.asctime,"ax",@progbits
  148. 137 .global asctime
  149. 138 .type asctime, @function
  150. 139 asctime:
  151. 140 /* prologue: function */
  152. 141 /* frame size = 0 */
  153. 142 /* stack size = 0 */
  154. 143 .L__stack_usage = 0
  155. 144 0000 60E0 ldi r22,lo8(buf_asctime)
  156. 145 0002 70E0 ldi r23,hi8(buf_asctime)
  157. 146 0004 0C94 0000 jmp asctime_r
  158. 147 .size asctime, .-asctime
  159. 148 .section .text.ctime,"ax",@progbits
  160. 149 .global ctime
  161. 150 .type ctime, @function
  162. 151 ctime:
  163. 152 /* prologue: function */
  164. 153 /* frame size = 0 */
  165. 154 /* stack size = 0 */
  166. 155 .L__stack_usage = 0
  167. 156 0000 0E94 0000 call localtime
  168. 157 0004 0C94 0000 jmp asctime
  169. 158 .size ctime, .-ctime
  170. 159 .section .text.ctime_r,"ax",@progbits
  171. 160 .global ctime_r
  172. 161 .type ctime_r, @function
  173. 162 ctime_r:
  174. 163 0000 0F93 push r16
  175. GAS LISTING /tmp/ccvEJZh4.s page 4
  176. 164 0002 1F93 push r17
  177. 165 0004 CF93 push r28
  178. 166 0006 DF93 push r29
  179. 167 0008 CDB7 in r28,__SP_L__
  180. 168 000a DEB7 in r29,__SP_H__
  181. 169 000c 6297 sbiw r28,18
  182. 170 000e 0FB6 in __tmp_reg__,__SREG__
  183. 171 0010 F894 cli
  184. 172 0012 DEBF out __SP_H__,r29
  185. 173 0014 0FBE out __SREG__,__tmp_reg__
  186. 174 0016 CDBF out __SP_L__,r28
  187. 175 /* prologue: function */
  188. 176 /* frame size = 18 */
  189. 177 /* stack size = 22 */
  190. 178 .L__stack_usage = 22
  191. 179 0018 8B01 movw r16,r22
  192. 180 001a BE01 movw r22,r28
  193. 181 001c 6F5F subi r22,-1
  194. 182 001e 7F4F sbci r23,-1
  195. 183 0020 0E94 0000 call localtime_r
  196. 184 0024 B801 movw r22,r16
  197. 185 0026 CE01 movw r24,r28
  198. 186 0028 0196 adiw r24,1
  199. 187 002a 0E94 0000 call asctime_r
  200. 188 /* epilogue start */
  201. 189 002e 6296 adiw r28,18
  202. 190 0030 0FB6 in __tmp_reg__,__SREG__
  203. 191 0032 F894 cli
  204. 192 0034 DEBF out __SP_H__,r29
  205. 193 0036 0FBE out __SREG__,__tmp_reg__
  206. 194 0038 CDBF out __SP_L__,r28
  207. 195 003a DF91 pop r29
  208. 196 003c CF91 pop r28
  209. 197 003e 1F91 pop r17
  210. 198 0040 0F91 pop r16
  211. 199 0042 0895 ret
  212. 200 .size ctime_r, .-ctime_r
  213. 201 .section .rodata
  214. 202 .type mon_name.2430, @object
  215. 203 .size mon_name.2430, 36
  216. 204 mon_name.2430:
  217. 205 0000 4A61 6E .ascii "Jan"
  218. 206 0003 4665 62 .ascii "Feb"
  219. 207 0006 4D61 72 .ascii "Mar"
  220. 208 0009 4170 72 .ascii "Apr"
  221. 209 000c 4D61 79 .ascii "May"
  222. 210 000f 4A75 6E .ascii "Jun"
  223. 211 0012 4A75 6C .ascii "Jul"
  224. 212 0015 4175 67 .ascii "Aug"
  225. 213 0018 5365 70 .ascii "Sep"
  226. 214 001b 4F63 74 .ascii "Oct"
  227. 215 001e 4E6F 76 .ascii "Nov"
  228. 216 0021 4465 63 .ascii "Dec"
  229. 217 .type wday_name.2429, @object
  230. 218 .size wday_name.2429, 21
  231. 219 wday_name.2429:
  232. 220 0024 5375 6E .ascii "Sun"
  233. GAS LISTING /tmp/ccvEJZh4.s page 5
  234. 221 0027 4D6F 6E .ascii "Mon"
  235. 222 002a 5475 65 .ascii "Tue"
  236. 223 002d 5765 64 .ascii "Wed"
  237. 224 0030 5468 75 .ascii "Thu"
  238. 225 0033 4672 69 .ascii "Fri"
  239. 226 0036 5361 74 .ascii "Sat"
  240. 227 .local buf_asctime
  241. 228 .comm buf_asctime,26,1
  242. 229 .ident "GCC: (GNU) 5.3.0"
  243. 230 .global __do_copy_data
  244. 231 .global __do_clear_bss
  245. GAS LISTING /tmp/ccvEJZh4.s page 6
  246. DEFINED SYMBOLS
  247. *ABS*:0000000000000000 asctime.c
  248. /tmp/ccvEJZh4.s:2 *ABS*:000000000000003e __SP_H__
  249. /tmp/ccvEJZh4.s:3 *ABS*:000000000000003d __SP_L__
  250. /tmp/ccvEJZh4.s:4 *ABS*:000000000000003f __SREG__
  251. /tmp/ccvEJZh4.s:5 *ABS*:000000000000003b __RAMPZ__
  252. /tmp/ccvEJZh4.s:6 *ABS*:0000000000000000 __tmp_reg__
  253. /tmp/ccvEJZh4.s:7 *ABS*:0000000000000001 __zero_reg__
  254. /tmp/ccvEJZh4.s:18 .text.asctime_r:0000000000000000 asctime_r
  255. /tmp/ccvEJZh4.s:219 .rodata:0000000000000024 wday_name.2429
  256. /tmp/ccvEJZh4.s:204 .rodata:0000000000000000 mon_name.2430
  257. /tmp/ccvEJZh4.s:139 .text.asctime:0000000000000000 asctime
  258. .bss:0000000000000000 buf_asctime
  259. /tmp/ccvEJZh4.s:151 .text.ctime:0000000000000000 ctime
  260. /tmp/ccvEJZh4.s:162 .text.ctime_r:0000000000000000 ctime_r
  261. UNDEFINED SYMBOLS
  262. errno
  263. strcpy
  264. sprintf
  265. localtime
  266. localtime_r
  267. __do_copy_data
  268. __do_clear_bss