rtc.lst 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  1. GAS LISTING /tmp/ccfCzNyY.s page 1
  2. 1 .file "rtc.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.NutRegisterRtc,"ax",@progbits
  10. 9 .global NutRegisterRtc
  11. 10 .type NutRegisterRtc, @function
  12. 11 NutRegisterRtc:
  13. 12 /* prologue: function */
  14. 13 /* frame size = 0 */
  15. 14 /* stack size = 0 */
  16. 15 .L__stack_usage = 0
  17. 16 0000 9093 0000 sts reg_rtc+1,r25
  18. 17 0004 8093 0000 sts reg_rtc,r24
  19. 18 0008 0097 sbiw r24,0
  20. 19 000a 01F4 brne .L2
  21. 20 .L4:
  22. 21 000c 80E0 ldi r24,0
  23. 22 000e 90E0 ldi r25,0
  24. 23 0010 0895 ret
  25. 24 .L2:
  26. 25 0012 DC01 movw r26,r24
  27. 26 0014 1296 adiw r26,2
  28. 27 0016 ED91 ld r30,X+
  29. 28 0018 FC91 ld r31,X
  30. 29 001a 1397 sbiw r26,2+1
  31. 30 001c 3097 sbiw r30,0
  32. 31 001e 01F0 breq .L4
  33. 32 0020 1995 eicall
  34. 33 0022 892B or r24,r25
  35. 34 0024 01F0 breq .L4
  36. 35 0026 1092 0000 sts reg_rtc+1,__zero_reg__
  37. 36 002a 1092 0000 sts reg_rtc,__zero_reg__
  38. 37 002e 8FEF ldi r24,lo8(-1)
  39. 38 0030 9FEF ldi r25,lo8(-1)
  40. 39 0032 0895 ret
  41. 40 .size NutRegisterRtc, .-NutRegisterRtc
  42. 41 .section .text.NutRtcGetTime,"ax",@progbits
  43. 42 .global NutRtcGetTime
  44. 43 .type NutRtcGetTime, @function
  45. 44 NutRtcGetTime:
  46. 45 /* prologue: function */
  47. 46 /* frame size = 0 */
  48. 47 /* stack size = 0 */
  49. 48 .L__stack_usage = 0
  50. 49 0000 A091 0000 lds r26,reg_rtc
  51. 50 0004 B091 0000 lds r27,reg_rtc+1
  52. 51 0008 1097 sbiw r26,0
  53. 52 000a 01F0 breq .L13
  54. 53 000c 1496 adiw r26,4
  55. 54 000e ED91 ld r30,X+
  56. 55 0010 FC91 ld r31,X
  57. 56 0012 1597 sbiw r26,4+1
  58. 57 0014 3097 sbiw r30,0
  59. GAS LISTING /tmp/ccfCzNyY.s page 2
  60. 58 0016 01F0 breq .L13
  61. 59 0018 0097 sbiw r24,0
  62. 60 001a 01F0 breq .L13
  63. 61 001c BC01 movw r22,r24
  64. 62 001e CD01 movw r24,r26
  65. 63 0020 1994 eijmp
  66. 64 .L13:
  67. 65 0022 8FEF ldi r24,lo8(-1)
  68. 66 0024 9FEF ldi r25,lo8(-1)
  69. 67 0026 0895 ret
  70. 68 .size NutRtcGetTime, .-NutRtcGetTime
  71. 69 .section .text.NutRtcSetTime,"ax",@progbits
  72. 70 .global NutRtcSetTime
  73. 71 .type NutRtcSetTime, @function
  74. 72 NutRtcSetTime:
  75. 73 /* prologue: function */
  76. 74 /* frame size = 0 */
  77. 75 /* stack size = 0 */
  78. 76 .L__stack_usage = 0
  79. 77 0000 A091 0000 lds r26,reg_rtc
  80. 78 0004 B091 0000 lds r27,reg_rtc+1
  81. 79 0008 1097 sbiw r26,0
  82. 80 000a 01F0 breq .L21
  83. 81 000c 1696 adiw r26,6
  84. 82 000e ED91 ld r30,X+
  85. 83 0010 FC91 ld r31,X
  86. 84 0012 1797 sbiw r26,6+1
  87. 85 0014 3097 sbiw r30,0
  88. 86 0016 01F0 breq .L21
  89. 87 0018 0097 sbiw r24,0
  90. 88 001a 01F0 breq .L21
  91. 89 001c BC01 movw r22,r24
  92. 90 001e CD01 movw r24,r26
  93. 91 0020 1994 eijmp
  94. 92 .L21:
  95. 93 0022 8FEF ldi r24,lo8(-1)
  96. 94 0024 9FEF ldi r25,lo8(-1)
  97. 95 0026 0895 ret
  98. 96 .size NutRtcSetTime, .-NutRtcSetTime
  99. 97 .section .text.NutRtcGetAlarm,"ax",@progbits
  100. 98 .global NutRtcGetAlarm
  101. 99 .type NutRtcGetAlarm, @function
  102. 100 NutRtcGetAlarm:
  103. 101 /* prologue: function */
  104. 102 /* frame size = 0 */
  105. 103 /* stack size = 0 */
  106. 104 .L__stack_usage = 0
  107. 105 0000 9A01 movw r18,r20
  108. 106 0002 A091 0000 lds r26,reg_rtc
  109. 107 0006 B091 0000 lds r27,reg_rtc+1
  110. 108 000a 1097 sbiw r26,0
  111. 109 000c 01F0 breq .L29
  112. 110 000e 1896 adiw r26,8
  113. 111 0010 ED91 ld r30,X+
  114. 112 0012 FC91 ld r31,X
  115. 113 0014 1997 sbiw r26,8+1
  116. 114 0016 3097 sbiw r30,0
  117. GAS LISTING /tmp/ccfCzNyY.s page 3
  118. 115 0018 01F0 breq .L29
  119. 116 001a AB01 movw r20,r22
  120. 117 001c BC01 movw r22,r24
  121. 118 001e CD01 movw r24,r26
  122. 119 0020 1994 eijmp
  123. 120 .L29:
  124. 121 0022 8FEF ldi r24,lo8(-1)
  125. 122 0024 9FEF ldi r25,lo8(-1)
  126. 123 0026 0895 ret
  127. 124 .size NutRtcGetAlarm, .-NutRtcGetAlarm
  128. 125 .section .text.NutRtcSetAlarm,"ax",@progbits
  129. 126 .global NutRtcSetAlarm
  130. 127 .type NutRtcSetAlarm, @function
  131. 128 NutRtcSetAlarm:
  132. 129 /* prologue: function */
  133. 130 /* frame size = 0 */
  134. 131 /* stack size = 0 */
  135. 132 .L__stack_usage = 0
  136. 133 0000 9A01 movw r18,r20
  137. 134 0002 A091 0000 lds r26,reg_rtc
  138. 135 0006 B091 0000 lds r27,reg_rtc+1
  139. 136 000a 1097 sbiw r26,0
  140. 137 000c 01F0 breq .L35
  141. 138 000e 1A96 adiw r26,10
  142. 139 0010 ED91 ld r30,X+
  143. 140 0012 FC91 ld r31,X
  144. 141 0014 1B97 sbiw r26,10+1
  145. 142 0016 3097 sbiw r30,0
  146. 143 0018 01F0 breq .L35
  147. 144 001a AB01 movw r20,r22
  148. 145 001c BC01 movw r22,r24
  149. 146 001e CD01 movw r24,r26
  150. 147 0020 1994 eijmp
  151. 148 .L35:
  152. 149 0022 8FEF ldi r24,lo8(-1)
  153. 150 0024 9FEF ldi r25,lo8(-1)
  154. 151 0026 0895 ret
  155. 152 .size NutRtcSetAlarm, .-NutRtcSetAlarm
  156. 153 .section .text.NutRtcGetStatus,"ax",@progbits
  157. 154 .global NutRtcGetStatus
  158. 155 .type NutRtcGetStatus, @function
  159. 156 NutRtcGetStatus:
  160. 157 /* prologue: function */
  161. 158 /* frame size = 0 */
  162. 159 /* stack size = 0 */
  163. 160 .L__stack_usage = 0
  164. 161 0000 A091 0000 lds r26,reg_rtc
  165. 162 0004 B091 0000 lds r27,reg_rtc+1
  166. 163 0008 1097 sbiw r26,0
  167. 164 000a 01F0 breq .L41
  168. 165 000c 1C96 adiw r26,12
  169. 166 000e ED91 ld r30,X+
  170. 167 0010 FC91 ld r31,X
  171. 168 0012 1D97 sbiw r26,12+1
  172. 169 0014 3097 sbiw r30,0
  173. 170 0016 01F0 breq .L41
  174. 171 0018 BC01 movw r22,r24
  175. GAS LISTING /tmp/ccfCzNyY.s page 4
  176. 172 001a CD01 movw r24,r26
  177. 173 001c 1994 eijmp
  178. 174 .L41:
  179. 175 001e 8FEF ldi r24,lo8(-1)
  180. 176 0020 9FEF ldi r25,lo8(-1)
  181. 177 0022 0895 ret
  182. 178 .size NutRtcGetStatus, .-NutRtcGetStatus
  183. 179 .section .text.NutRtcClearStatus,"ax",@progbits
  184. 180 .global NutRtcClearStatus
  185. 181 .type NutRtcClearStatus, @function
  186. 182 NutRtcClearStatus:
  187. 183 /* prologue: function */
  188. 184 /* frame size = 0 */
  189. 185 /* stack size = 0 */
  190. 186 .L__stack_usage = 0
  191. 187 0000 AB01 movw r20,r22
  192. 188 0002 BC01 movw r22,r24
  193. 189 0004 8091 0000 lds r24,reg_rtc
  194. 190 0008 9091 0000 lds r25,reg_rtc+1
  195. 191 000c 0097 sbiw r24,0
  196. 192 000e 01F0 breq .L47
  197. 193 0010 DC01 movw r26,r24
  198. 194 0012 1E96 adiw r26,14
  199. 195 0014 ED91 ld r30,X+
  200. 196 0016 FC91 ld r31,X
  201. 197 0018 1F97 sbiw r26,14+1
  202. 198 001a 3097 sbiw r30,0
  203. 199 001c 01F0 breq .L47
  204. 200 001e 1994 eijmp
  205. 201 .L47:
  206. 202 0020 8FEF ldi r24,lo8(-1)
  207. 203 0022 9FEF ldi r25,lo8(-1)
  208. 204 0024 0895 ret
  209. 205 .size NutRtcClearStatus, .-NutRtcClearStatus
  210. 206 .local reg_rtc
  211. 207 .comm reg_rtc,2,1
  212. 208 .ident "GCC: (GNU) 5.3.0"
  213. 209 .global __do_clear_bss
  214. GAS LISTING /tmp/ccfCzNyY.s page 5
  215. DEFINED SYMBOLS
  216. *ABS*:0000000000000000 rtc.c
  217. /tmp/ccfCzNyY.s:2 *ABS*:000000000000003e __SP_H__
  218. /tmp/ccfCzNyY.s:3 *ABS*:000000000000003d __SP_L__
  219. /tmp/ccfCzNyY.s:4 *ABS*:000000000000003f __SREG__
  220. /tmp/ccfCzNyY.s:5 *ABS*:000000000000003b __RAMPZ__
  221. /tmp/ccfCzNyY.s:6 *ABS*:0000000000000000 __tmp_reg__
  222. /tmp/ccfCzNyY.s:7 *ABS*:0000000000000001 __zero_reg__
  223. /tmp/ccfCzNyY.s:11 .text.NutRegisterRtc:0000000000000000 NutRegisterRtc
  224. .bss:0000000000000000 reg_rtc
  225. /tmp/ccfCzNyY.s:44 .text.NutRtcGetTime:0000000000000000 NutRtcGetTime
  226. /tmp/ccfCzNyY.s:72 .text.NutRtcSetTime:0000000000000000 NutRtcSetTime
  227. /tmp/ccfCzNyY.s:100 .text.NutRtcGetAlarm:0000000000000000 NutRtcGetAlarm
  228. /tmp/ccfCzNyY.s:128 .text.NutRtcSetAlarm:0000000000000000 NutRtcSetAlarm
  229. /tmp/ccfCzNyY.s:156 .text.NutRtcGetStatus:0000000000000000 NutRtcGetStatus
  230. /tmp/ccfCzNyY.s:182 .text.NutRtcClearStatus:0000000000000000 NutRtcClearStatus
  231. UNDEFINED SYMBOLS
  232. __do_clear_bss