spi_mmc_gpio.lst 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259
  1. GAS LISTING /tmp/cctryZOI.s page 1
  2. 1 .file "spi_mmc_gpio.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.SpiMmcGpioLed,"ax",@progbits
  10. 9 .type SpiMmcGpioLed, @function
  11. 10 SpiMmcGpioLed:
  12. 11 /* prologue: function */
  13. 12 /* frame size = 0 */
  14. 13 /* stack size = 0 */
  15. 14 .L__stack_usage = 0
  16. 15 0000 0895 ret
  17. 16 .size SpiMmcGpioLed, .-SpiMmcGpioLed
  18. 17 .section .text.SpiMmcGpioPower,"ax",@progbits
  19. 18 .type SpiMmcGpioPower, @function
  20. 19 SpiMmcGpioPower:
  21. 20 /* prologue: function */
  22. 21 /* frame size = 0 */
  23. 22 /* stack size = 0 */
  24. 23 .L__stack_usage = 0
  25. 24 0000 8FEF ldi r24,lo8(-1)
  26. 25 0002 9FEF ldi r25,lo8(-1)
  27. 26 0004 0895 ret
  28. 27 .size SpiMmcGpioPower, .-SpiMmcGpioPower
  29. 28 .section .rodata
  30. 29 .LC0:
  31. 30 0000 FF .byte -1
  32. 31 0001 FF .byte -1
  33. 32 0002 FF .byte -1
  34. 33 0003 FF .byte -1
  35. 34 0004 FF .byte -1
  36. 35 0005 FF .byte -1
  37. 36 0006 FF .byte -1
  38. 37 0007 FF .byte -1
  39. 38 0008 FF .byte -1
  40. 39 0009 FF .byte -1
  41. 40 .section .text.SpiMmcGpioReset,"ax",@progbits
  42. 41 .type SpiMmcGpioReset, @function
  43. 42 SpiMmcGpioReset:
  44. 43 0000 EF92 push r14
  45. 44 0002 FF92 push r15
  46. 45 0004 0F93 push r16
  47. 46 0006 1F93 push r17
  48. 47 0008 CF93 push r28
  49. 48 000a DF93 push r29
  50. 49 000c CDB7 in r28,__SP_L__
  51. 50 000e DEB7 in r29,__SP_H__
  52. 51 0010 2A97 sbiw r28,10
  53. 52 0012 0FB6 in __tmp_reg__,__SREG__
  54. 53 0014 F894 cli
  55. 54 0016 DEBF out __SP_H__,r29
  56. 55 0018 0FBE out __SREG__,__tmp_reg__
  57. 56 001a CDBF out __SP_L__,r28
  58. 57 /* prologue: function */
  59. GAS LISTING /tmp/cctryZOI.s page 2
  60. 58 /* frame size = 10 */
  61. 59 /* stack size = 16 */
  62. 60 .L__stack_usage = 16
  63. 61 001c DC01 movw r26,r24
  64. 62 001e 1F96 adiw r26,15
  65. 63 0020 0D91 ld r16,X+
  66. 64 0022 1C91 ld r17,X
  67. 65 0024 5097 sbiw r26,15+1
  68. 66 0026 F801 movw r30,r16
  69. 67 0028 E080 ld r14,Z
  70. 68 002a F180 ldd r15,Z+1
  71. 69 002c 8085 ldd r24,Z+8
  72. 70 002e 9185 ldd r25,Z+9
  73. 71 0030 9064 ori r25,64
  74. 72 0032 9187 std Z+9,r25
  75. 73 0034 8087 std Z+8,r24
  76. 74 0036 D701 movw r26,r14
  77. 75 0038 1A96 adiw r26,10
  78. 76 003a ED91 ld r30,X+
  79. 77 003c FC91 ld r31,X
  80. 78 003e 1B97 sbiw r26,10+1
  81. 79 0040 48EE ldi r20,lo8(-24)
  82. 80 0042 53E0 ldi r21,lo8(3)
  83. 81 0044 60E0 ldi r22,0
  84. 82 0046 70E0 ldi r23,0
  85. 83 0048 C801 movw r24,r16
  86. 84 004a 1995 eicall
  87. 85 004c 892B or r24,r25
  88. 86 004e 01F4 brne .L4
  89. 87 0050 8AE0 ldi r24,lo8(10)
  90. 88 0052 E0E0 ldi r30,lo8(.LC0)
  91. 89 0054 F0E0 ldi r31,hi8(.LC0)
  92. 90 0056 DE01 movw r26,r28
  93. 91 0058 1196 adiw r26,1
  94. 92 0:
  95. 93 005a 0190 ld r0,Z+
  96. 94 005c 0D92 st X+,r0
  97. 95 005e 8A95 dec r24
  98. 96 0060 01F4 brne 0b
  99. 97 0062 D701 movw r26,r14
  100. 98 0064 1E96 adiw r26,14
  101. 99 0066 ED91 ld r30,X+
  102. 100 0068 FC91 ld r31,X
  103. 101 006a 1F97 sbiw r26,14+1
  104. 102 006c 2AE0 ldi r18,lo8(10)
  105. 103 006e 30E0 ldi r19,0
  106. 104 0070 40E0 ldi r20,0
  107. 105 0072 50E0 ldi r21,0
  108. 106 0074 BE01 movw r22,r28
  109. 107 0076 6F5F subi r22,-1
  110. 108 0078 7F4F sbci r23,-1
  111. 109 007a C801 movw r24,r16
  112. 110 007c 1995 eicall
  113. 111 .L4:
  114. 112 007e F801 movw r30,r16
  115. 113 0080 8085 ldd r24,Z+8
  116. 114 0082 9185 ldd r25,Z+9
  117. GAS LISTING /tmp/cctryZOI.s page 3
  118. 115 0084 9F7B andi r25,191
  119. 116 0086 9187 std Z+9,r25
  120. 117 0088 8087 std Z+8,r24
  121. 118 008a D701 movw r26,r14
  122. 119 008c 1C96 adiw r26,12
  123. 120 008e ED91 ld r30,X+
  124. 121 0090 FC91 ld r31,X
  125. 122 0092 1D97 sbiw r26,12+1
  126. 123 0094 C801 movw r24,r16
  127. 124 0096 1995 eicall
  128. 125 0098 80E0 ldi r24,0
  129. 126 009a 90E0 ldi r25,0
  130. 127 /* epilogue start */
  131. 128 009c 2A96 adiw r28,10
  132. 129 009e 0FB6 in __tmp_reg__,__SREG__
  133. 130 00a0 F894 cli
  134. 131 00a2 DEBF out __SP_H__,r29
  135. 132 00a4 0FBE out __SREG__,__tmp_reg__
  136. 133 00a6 CDBF out __SP_L__,r28
  137. 134 00a8 DF91 pop r29
  138. 135 00aa CF91 pop r28
  139. 136 00ac 1F91 pop r17
  140. 137 00ae 0F91 pop r16
  141. 138 00b0 FF90 pop r15
  142. 139 00b2 EF90 pop r14
  143. 140 00b4 0895 ret
  144. 141 .size SpiMmcGpioReset, .-SpiMmcGpioReset
  145. 142 .section .text.SpiMmcGpioInit,"ax",@progbits
  146. 143 .type SpiMmcGpioInit, @function
  147. 144 SpiMmcGpioInit:
  148. 145 0000 CF93 push r28
  149. 146 0002 DF93 push r29
  150. 147 /* prologue: function */
  151. 148 /* frame size = 0 */
  152. 149 /* stack size = 2 */
  153. 150 .L__stack_usage = 2
  154. 151 0004 EC01 movw r28,r24
  155. 152 0006 0E94 0000 call SpiMmcGpioReset
  156. 153 000a CE01 movw r24,r28
  157. 154 000c 0E94 0000 call SpiMmcInit
  158. 155 0010 E989 ldd r30,Y+17
  159. 156 0012 FA89 ldd r31,Y+18
  160. 157 0014 21E0 ldi r18,lo8(1)
  161. 158 0016 2083 st Z,r18
  162. 159 0018 E989 ldd r30,Y+17
  163. 160 001a FA89 ldd r31,Y+18
  164. 161 001c 2183 std Z+1,r18
  165. 162 /* epilogue start */
  166. 163 001e DF91 pop r29
  167. 164 0020 CF91 pop r28
  168. 165 0022 0895 ret
  169. 166 .size SpiMmcGpioInit, .-SpiMmcGpioInit
  170. 167 .global devSpiMmcGpio
  171. 168 .data
  172. 169 .type devSpiMmcGpio, @object
  173. 170 .size devSpiMmcGpio, 37
  174. 171 devSpiMmcGpio:
  175. GAS LISTING /tmp/cctryZOI.s page 4
  176. 172 0000 0000 .word 0
  177. 173 0002 4D .byte 77
  178. 174 0003 4D .byte 77
  179. 175 0004 43 .byte 67
  180. 176 0005 30 .byte 48
  181. 177 0006 00 .byte 0
  182. 178 0007 00 .byte 0
  183. 179 0008 00 .byte 0
  184. 180 0009 00 .byte 0
  185. 181 000a 00 .byte 0
  186. 182 000b 00 .byte 0
  187. 183 000c 0000 .word 0
  188. 184 000e 00 .byte 0
  189. 185 000f 0000 .word nodeSpiMmcGpio
  190. 186 0011 0000 .word mcsSpiMmcGpio
  191. 187 0013 0000 .word gs(SpiMmcGpioInit)
  192. 188 0015 0000 .word gs(SpiMmcIOCtl)
  193. 189 0017 0000 .word gs(SpiMmcBlockRead)
  194. 190 0019 0000 .word gs(SpiMmcBlockWrite)
  195. 191 001b 0000 .word gs(SpiMmcBlockWrite_P)
  196. 192 001d 0000 .word gs(SpiMmcMount)
  197. 193 001f 0000 .word gs(SpiMmcUnmount)
  198. 194 0021 0000 .word 0
  199. 195 0023 0000 .word 0
  200. 196 .global nodeSpiMmcGpio
  201. 197 .type nodeSpiMmcGpio, @object
  202. 198 .size nodeSpiMmcGpio, 14
  203. 199 nodeSpiMmcGpio:
  204. 200 0025 0000 .word 0
  205. 201 0027 0000 .word 0
  206. 202 0029 40 .byte 64
  207. 203 002a 8A .byte -118
  208. 204 002b F7 .byte -9
  209. 205 002c 01 .byte 1
  210. 206 002d 0000 .word 0
  211. 207 002f 08 .byte 8
  212. 208 0030 00 .byte 0
  213. 209 0031 0000 .word mcsSpiMmcGpio
  214. 210 .type mcsSpiMmcGpio, @object
  215. 211 .size mcsSpiMmcGpio, 8
  216. 212 mcsSpiMmcGpio:
  217. 213 0033 00 .byte 0
  218. 214 0034 00 .byte 0
  219. 215 0035 0000 .word gs(SpiMmcGpioReset)
  220. 216 0037 0000 .word gs(SpiMmcGpioLed)
  221. 217 0039 0000 .word gs(SpiMmcGpioPower)
  222. 218 .ident "GCC: (GNU) 5.3.0"
  223. 219 .global __do_copy_data
  224. GAS LISTING /tmp/cctryZOI.s page 5
  225. DEFINED SYMBOLS
  226. *ABS*:0000000000000000 spi_mmc_gpio.c
  227. /tmp/cctryZOI.s:2 *ABS*:000000000000003e __SP_H__
  228. /tmp/cctryZOI.s:3 *ABS*:000000000000003d __SP_L__
  229. /tmp/cctryZOI.s:4 *ABS*:000000000000003f __SREG__
  230. /tmp/cctryZOI.s:5 *ABS*:000000000000003b __RAMPZ__
  231. /tmp/cctryZOI.s:6 *ABS*:0000000000000000 __tmp_reg__
  232. /tmp/cctryZOI.s:7 *ABS*:0000000000000001 __zero_reg__
  233. /tmp/cctryZOI.s:10 .text.SpiMmcGpioLed:0000000000000000 SpiMmcGpioLed
  234. /tmp/cctryZOI.s:19 .text.SpiMmcGpioPower:0000000000000000 SpiMmcGpioPower
  235. /tmp/cctryZOI.s:42 .text.SpiMmcGpioReset:0000000000000000 SpiMmcGpioReset
  236. /tmp/cctryZOI.s:144 .text.SpiMmcGpioInit:0000000000000000 SpiMmcGpioInit
  237. /tmp/cctryZOI.s:171 .data:0000000000000000 devSpiMmcGpio
  238. /tmp/cctryZOI.s:199 .data:0000000000000025 nodeSpiMmcGpio
  239. /tmp/cctryZOI.s:212 .data:0000000000000033 mcsSpiMmcGpio
  240. UNDEFINED SYMBOLS
  241. SpiMmcInit
  242. SpiMmcIOCtl
  243. SpiMmcBlockRead
  244. SpiMmcBlockWrite
  245. SpiMmcBlockWrite_P
  246. SpiMmcMount
  247. SpiMmcUnmount
  248. __do_copy_data