can_dev.lst 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300
  1. GAS LISTING /tmp/cchKQqAd.s page 1
  2. 1 .file "can_dev.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.CAN_SetSpeed,"ax",@progbits
  10. 9 .global CAN_SetSpeed
  11. 10 .type CAN_SetSpeed, @function
  12. 11 CAN_SetSpeed:
  13. 12 /* prologue: function */
  14. 13 /* frame size = 0 */
  15. 14 /* stack size = 0 */
  16. 15 .L__stack_usage = 0
  17. 16 0000 DC01 movw r26,r24
  18. 17 0002 1F96 adiw r26,15
  19. 18 0004 ED91 ld r30,X+
  20. 19 0006 FC91 ld r31,X
  21. 20 0008 5097 sbiw r26,15+1
  22. 21 000a 058C ldd __tmp_reg__,Z+29
  23. 22 000c F68D ldd r31,Z+30
  24. 23 000e E02D mov r30,__tmp_reg__
  25. 24 0010 1994 eijmp
  26. 25 .size CAN_SetSpeed, .-CAN_SetSpeed
  27. 26 .section .text.CAN_SetFilter,"ax",@progbits
  28. 27 .global CAN_SetFilter
  29. 28 .type CAN_SetFilter, @function
  30. 29 CAN_SetFilter:
  31. 30 0000 0F93 push r16
  32. 31 0002 1F93 push r17
  33. 32 0004 CF93 push r28
  34. 33 0006 DF93 push r29
  35. 34 /* prologue: function */
  36. 35 /* frame size = 0 */
  37. 36 /* stack size = 4 */
  38. 37 .L__stack_usage = 4
  39. 38 0008 EC01 movw r28,r24
  40. 39 000a 8A01 movw r16,r20
  41. 40 000c EF85 ldd r30,Y+15
  42. 41 000e F889 ldd r31,Y+16
  43. 42 0010 018C ldd __tmp_reg__,Z+25
  44. 43 0012 F28D ldd r31,Z+26
  45. 44 0014 E02D mov r30,__tmp_reg__
  46. 45 0016 1995 eicall
  47. 46 0018 EF85 ldd r30,Y+15
  48. 47 001a F889 ldd r31,Y+16
  49. 48 001c 038C ldd __tmp_reg__,Z+27
  50. 49 001e F48D ldd r31,Z+28
  51. 50 0020 E02D mov r30,__tmp_reg__
  52. 51 0022 B801 movw r22,r16
  53. 52 0024 CE01 movw r24,r28
  54. 53 /* epilogue start */
  55. 54 0026 DF91 pop r29
  56. 55 0028 CF91 pop r28
  57. 56 002a 1F91 pop r17
  58. 57 002c 0F91 pop r16
  59. GAS LISTING /tmp/cchKQqAd.s page 2
  60. 58 002e 1994 eijmp
  61. 59 .size CAN_SetFilter, .-CAN_SetFilter
  62. 60 .section .text.CAN_TxFrame,"ax",@progbits
  63. 61 .global CAN_TxFrame
  64. 62 .type CAN_TxFrame, @function
  65. 63 CAN_TxFrame:
  66. 64 /* prologue: function */
  67. 65 /* frame size = 0 */
  68. 66 /* stack size = 0 */
  69. 67 .L__stack_usage = 0
  70. 68 0000 DC01 movw r26,r24
  71. 69 0002 1F96 adiw r26,15
  72. 70 0004 ED91 ld r30,X+
  73. 71 0006 FC91 ld r31,X
  74. 72 0008 5097 sbiw r26,15+1
  75. 73 000a 0788 ldd __tmp_reg__,Z+23
  76. 74 000c F08D ldd r31,Z+24
  77. 75 000e E02D mov r30,__tmp_reg__
  78. 76 0010 1994 eijmp
  79. 77 .size CAN_TxFrame, .-CAN_TxFrame
  80. 78 .section .text.CAN_TryTxFrame,"ax",@progbits
  81. 79 .global CAN_TryTxFrame
  82. 80 .type CAN_TryTxFrame, @function
  83. 81 CAN_TryTxFrame:
  84. 82 0000 0F93 push r16
  85. 83 0002 1F93 push r17
  86. 84 0004 CF93 push r28
  87. 85 0006 DF93 push r29
  88. 86 0008 1F92 push __zero_reg__
  89. 87 000a 1F92 push __zero_reg__
  90. 88 000c CDB7 in r28,__SP_L__
  91. 89 000e DEB7 in r29,__SP_H__
  92. 90 /* prologue: function */
  93. 91 /* frame size = 2 */
  94. 92 /* stack size = 6 */
  95. 93 .L__stack_usage = 6
  96. 94 0010 8C01 movw r16,r24
  97. 95 0012 DC01 movw r26,r24
  98. 96 0014 1F96 adiw r26,15
  99. 97 0016 ED91 ld r30,X+
  100. 98 0018 FC91 ld r31,X
  101. 99 001a 5097 sbiw r26,15+1
  102. 100 001c 0388 ldd __tmp_reg__,Z+19
  103. 101 001e F489 ldd r31,Z+20
  104. 102 0020 E02D mov r30,__tmp_reg__
  105. 103 0022 6983 std Y+1,r22
  106. 104 0024 7A83 std Y+2,r23
  107. 105 0026 1995 eicall
  108. 106 0028 6981 ldd r22,Y+1
  109. 107 002a 7A81 ldd r23,Y+2
  110. 108 002c 8823 tst r24
  111. 109 002e 01F0 breq .L6
  112. 110 0030 D801 movw r26,r16
  113. 111 0032 1F96 adiw r26,15
  114. 112 0034 ED91 ld r30,X+
  115. 113 0036 FC91 ld r31,X
  116. 114 0038 5097 sbiw r26,15+1
  117. GAS LISTING /tmp/cchKQqAd.s page 3
  118. 115 003a 0788 ldd __tmp_reg__,Z+23
  119. 116 003c F08D ldd r31,Z+24
  120. 117 003e E02D mov r30,__tmp_reg__
  121. 118 0040 C801 movw r24,r16
  122. 119 0042 1995 eicall
  123. 120 0044 80E0 ldi r24,0
  124. 121 0046 00C0 rjmp .L5
  125. 122 .L6:
  126. 123 0048 81E0 ldi r24,lo8(1)
  127. 124 .L5:
  128. 125 /* epilogue start */
  129. 126 004a 0F90 pop __tmp_reg__
  130. 127 004c 0F90 pop __tmp_reg__
  131. 128 004e DF91 pop r29
  132. 129 0050 CF91 pop r28
  133. 130 0052 1F91 pop r17
  134. 131 0054 0F91 pop r16
  135. 132 0056 0895 ret
  136. 133 .size CAN_TryTxFrame, .-CAN_TryTxFrame
  137. 134 .section .text.CAN_TxFree,"ax",@progbits
  138. 135 .global CAN_TxFree
  139. 136 .type CAN_TxFree, @function
  140. 137 CAN_TxFree:
  141. 138 /* prologue: function */
  142. 139 /* frame size = 0 */
  143. 140 /* stack size = 0 */
  144. 141 .L__stack_usage = 0
  145. 142 0000 DC01 movw r26,r24
  146. 143 0002 1F96 adiw r26,15
  147. 144 0004 ED91 ld r30,X+
  148. 145 0006 FC91 ld r31,X
  149. 146 0008 5097 sbiw r26,15+1
  150. 147 000a 0388 ldd __tmp_reg__,Z+19
  151. 148 000c F489 ldd r31,Z+20
  152. 149 000e E02D mov r30,__tmp_reg__
  153. 150 0010 1994 eijmp
  154. 151 .size CAN_TxFree, .-CAN_TxFree
  155. 152 .section .text.CAN_RxFrame,"ax",@progbits
  156. 153 .global CAN_RxFrame
  157. 154 .type CAN_RxFrame, @function
  158. 155 CAN_RxFrame:
  159. 156 /* prologue: function */
  160. 157 /* frame size = 0 */
  161. 158 /* stack size = 0 */
  162. 159 .L__stack_usage = 0
  163. 160 0000 DC01 movw r26,r24
  164. 161 0002 1F96 adiw r26,15
  165. 162 0004 ED91 ld r30,X+
  166. 163 0006 FC91 ld r31,X
  167. 164 0008 5097 sbiw r26,15+1
  168. 165 000a 0588 ldd __tmp_reg__,Z+21
  169. 166 000c F689 ldd r31,Z+22
  170. 167 000e E02D mov r30,__tmp_reg__
  171. 168 0010 1994 eijmp
  172. 169 .size CAN_RxFrame, .-CAN_RxFrame
  173. 170 .section .text.CAN_TryRxFrame,"ax",@progbits
  174. 171 .global CAN_TryRxFrame
  175. GAS LISTING /tmp/cchKQqAd.s page 4
  176. 172 .type CAN_TryRxFrame, @function
  177. 173 CAN_TryRxFrame:
  178. 174 0000 0F93 push r16
  179. 175 0002 1F93 push r17
  180. 176 0004 CF93 push r28
  181. 177 0006 DF93 push r29
  182. 178 0008 1F92 push __zero_reg__
  183. 179 000a 1F92 push __zero_reg__
  184. 180 000c CDB7 in r28,__SP_L__
  185. 181 000e DEB7 in r29,__SP_H__
  186. 182 /* prologue: function */
  187. 183 /* frame size = 2 */
  188. 184 /* stack size = 6 */
  189. 185 .L__stack_usage = 6
  190. 186 0010 8C01 movw r16,r24
  191. 187 0012 DC01 movw r26,r24
  192. 188 0014 1F96 adiw r26,15
  193. 189 0016 ED91 ld r30,X+
  194. 190 0018 FC91 ld r31,X
  195. 191 001a 5097 sbiw r26,15+1
  196. 192 001c 0188 ldd __tmp_reg__,Z+17
  197. 193 001e F289 ldd r31,Z+18
  198. 194 0020 E02D mov r30,__tmp_reg__
  199. 195 0022 6983 std Y+1,r22
  200. 196 0024 7A83 std Y+2,r23
  201. 197 0026 1995 eicall
  202. 198 0028 6981 ldd r22,Y+1
  203. 199 002a 7A81 ldd r23,Y+2
  204. 200 002c 8823 tst r24
  205. 201 002e 01F0 breq .L12
  206. 202 0030 D801 movw r26,r16
  207. 203 0032 1F96 adiw r26,15
  208. 204 0034 ED91 ld r30,X+
  209. 205 0036 FC91 ld r31,X
  210. 206 0038 5097 sbiw r26,15+1
  211. 207 003a 0588 ldd __tmp_reg__,Z+21
  212. 208 003c F689 ldd r31,Z+22
  213. 209 003e E02D mov r30,__tmp_reg__
  214. 210 0040 C801 movw r24,r16
  215. 211 0042 1995 eicall
  216. 212 0044 80E0 ldi r24,0
  217. 213 0046 00C0 rjmp .L11
  218. 214 .L12:
  219. 215 0048 81E0 ldi r24,lo8(1)
  220. 216 .L11:
  221. 217 /* epilogue start */
  222. 218 004a 0F90 pop __tmp_reg__
  223. 219 004c 0F90 pop __tmp_reg__
  224. 220 004e DF91 pop r29
  225. 221 0050 CF91 pop r28
  226. 222 0052 1F91 pop r17
  227. 223 0054 0F91 pop r16
  228. 224 0056 0895 ret
  229. 225 .size CAN_TryRxFrame, .-CAN_TryRxFrame
  230. 226 .section .text.CAN_RxAvail,"ax",@progbits
  231. 227 .global CAN_RxAvail
  232. 228 .type CAN_RxAvail, @function
  233. GAS LISTING /tmp/cchKQqAd.s page 5
  234. 229 CAN_RxAvail:
  235. 230 /* prologue: function */
  236. 231 /* frame size = 0 */
  237. 232 /* stack size = 0 */
  238. 233 .L__stack_usage = 0
  239. 234 0000 DC01 movw r26,r24
  240. 235 0002 1F96 adiw r26,15
  241. 236 0004 ED91 ld r30,X+
  242. 237 0006 FC91 ld r31,X
  243. 238 0008 5097 sbiw r26,15+1
  244. 239 000a 0188 ldd __tmp_reg__,Z+17
  245. 240 000c F289 ldd r31,Z+18
  246. 241 000e E02D mov r30,__tmp_reg__
  247. 242 0010 1994 eijmp
  248. 243 .size CAN_RxAvail, .-CAN_RxAvail
  249. 244 .section .text.CAN_SetRxTimeout,"ax",@progbits
  250. 245 .global CAN_SetRxTimeout
  251. 246 .type CAN_SetRxTimeout, @function
  252. 247 CAN_SetRxTimeout:
  253. 248 /* prologue: function */
  254. 249 /* frame size = 0 */
  255. 250 /* stack size = 0 */
  256. 251 .L__stack_usage = 0
  257. 252 0000 DC01 movw r26,r24
  258. 253 0002 1F96 adiw r26,15
  259. 254 0004 ED91 ld r30,X+
  260. 255 0006 FC91 ld r31,X
  261. 256 0008 5097 sbiw r26,15+1
  262. 257 000a 4587 std Z+13,r20
  263. 258 000c 5687 std Z+14,r21
  264. 259 000e 6787 std Z+15,r22
  265. 260 0010 708B std Z+16,r23
  266. 261 0012 0895 ret
  267. 262 .size CAN_SetRxTimeout, .-CAN_SetRxTimeout
  268. 263 .ident "GCC: (GNU) 5.3.0"
  269. GAS LISTING /tmp/cchKQqAd.s page 6
  270. DEFINED SYMBOLS
  271. *ABS*:0000000000000000 can_dev.c
  272. /tmp/cchKQqAd.s:2 *ABS*:000000000000003e __SP_H__
  273. /tmp/cchKQqAd.s:3 *ABS*:000000000000003d __SP_L__
  274. /tmp/cchKQqAd.s:4 *ABS*:000000000000003f __SREG__
  275. /tmp/cchKQqAd.s:5 *ABS*:000000000000003b __RAMPZ__
  276. /tmp/cchKQqAd.s:6 *ABS*:0000000000000000 __tmp_reg__
  277. /tmp/cchKQqAd.s:7 *ABS*:0000000000000001 __zero_reg__
  278. /tmp/cchKQqAd.s:11 .text.CAN_SetSpeed:0000000000000000 CAN_SetSpeed
  279. /tmp/cchKQqAd.s:29 .text.CAN_SetFilter:0000000000000000 CAN_SetFilter
  280. /tmp/cchKQqAd.s:63 .text.CAN_TxFrame:0000000000000000 CAN_TxFrame
  281. /tmp/cchKQqAd.s:81 .text.CAN_TryTxFrame:0000000000000000 CAN_TryTxFrame
  282. /tmp/cchKQqAd.s:137 .text.CAN_TxFree:0000000000000000 CAN_TxFree
  283. /tmp/cchKQqAd.s:155 .text.CAN_RxFrame:0000000000000000 CAN_RxFrame
  284. /tmp/cchKQqAd.s:173 .text.CAN_TryRxFrame:0000000000000000 CAN_TryRxFrame
  285. /tmp/cchKQqAd.s:229 .text.CAN_RxAvail:0000000000000000 CAN_RxAvail
  286. /tmp/cchKQqAd.s:247 .text.CAN_SetRxTimeout:0000000000000000 CAN_SetRxTimeout
  287. NO UNDEFINED SYMBOLS