sja1000.lst 64 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841
  1. GAS LISTING /tmp/cczkoS7A.s page 1
  2. 1 .file "sja1000.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.SJASetAccCode,"ax",@progbits
  10. 9 .global SJASetAccCode
  11. 10 .type SJASetAccCode, @function
  12. 11 SJASetAccCode:
  13. 12 0000 CF93 push r28
  14. 13 0002 DF93 push r29
  15. 14 /* prologue: function */
  16. 15 /* frame size = 0 */
  17. 16 /* stack size = 2 */
  18. 17 .L__stack_usage = 2
  19. 18 0004 FB01 movw r30,r22
  20. 19 0006 EC01 movw r28,r24
  21. 20 0008 AF85 ldd r26,Y+15
  22. 21 000a B889 ldd r27,Y+16
  23. 22 000c 4081 ld r20,Z
  24. 23 000e 5181 ldd r21,Z+1
  25. 24 0010 6281 ldd r22,Z+2
  26. 25 0012 7381 ldd r23,Z+3
  27. 26 0014 1996 adiw r26,9
  28. 27 0016 4D93 st X+,r20
  29. 28 0018 5D93 st X+,r21
  30. 29 001a 6D93 st X+,r22
  31. 30 001c 7C93 st X,r23
  32. 31 001e 1C97 sbiw r26,9+3
  33. 32 .L2:
  34. 33 0020 A091 0000 lds r26,sja_base
  35. 34 0024 B091 0000 lds r27,sja_base+1
  36. 35 0028 8C91 ld r24,X
  37. 36 002a A091 0000 lds r26,sja_base
  38. 37 002e B091 0000 lds r27,sja_base+1
  39. 38 0032 80FD sbrc r24,0
  40. 39 0034 00C0 rjmp .L7
  41. 40 0036 C091 0000 lds r28,sja_base
  42. 41 003a D091 0000 lds r29,sja_base+1
  43. 42 003e 8881 ld r24,Y
  44. 43 0040 8160 ori r24,lo8(1)
  45. 44 0042 8C93 st X,r24
  46. 45 0044 00C0 rjmp .L2
  47. 46 .L7:
  48. 47 0046 8081 ld r24,Z
  49. 48 0048 5096 adiw r26,16
  50. 49 004a 8C93 st X,r24
  51. 50 004c A091 0000 lds r26,sja_base
  52. 51 0050 B091 0000 lds r27,sja_base+1
  53. 52 0054 8181 ldd r24,Z+1
  54. 53 0056 5196 adiw r26,17
  55. 54 0058 8C93 st X,r24
  56. 55 005a A091 0000 lds r26,sja_base
  57. 56 005e B091 0000 lds r27,sja_base+1
  58. 57 0062 8281 ldd r24,Z+2
  59. GAS LISTING /tmp/cczkoS7A.s page 2
  60. 58 0064 5296 adiw r26,18
  61. 59 0066 8C93 st X,r24
  62. 60 0068 A091 0000 lds r26,sja_base
  63. 61 006c B091 0000 lds r27,sja_base+1
  64. 62 0070 8381 ldd r24,Z+3
  65. 63 0072 5396 adiw r26,19
  66. 64 0074 8C93 st X,r24
  67. 65 0076 E091 0000 lds r30,sja_base
  68. 66 007a F091 0000 lds r31,sja_base+1
  69. 67 007e 88E0 ldi r24,lo8(8)
  70. 68 0080 8083 st Z,r24
  71. 69 .L4:
  72. 70 0082 E091 0000 lds r30,sja_base
  73. 71 0086 F091 0000 lds r31,sja_base+1
  74. 72 008a 1082 st Z,__zero_reg__
  75. 73 008c E091 0000 lds r30,sja_base
  76. 74 0090 F091 0000 lds r31,sja_base+1
  77. 75 0094 8081 ld r24,Z
  78. 76 0096 80FD sbrc r24,0
  79. 77 0098 00C0 rjmp .L4
  80. 78 /* epilogue start */
  81. 79 009a DF91 pop r29
  82. 80 009c CF91 pop r28
  83. 81 009e 0895 ret
  84. 82 .size SJASetAccCode, .-SJASetAccCode
  85. 83 .section .text.SJASetAccMask,"ax",@progbits
  86. 84 .global SJASetAccMask
  87. 85 .type SJASetAccMask, @function
  88. 86 SJASetAccMask:
  89. 87 0000 CF93 push r28
  90. 88 0002 DF93 push r29
  91. 89 /* prologue: function */
  92. 90 /* frame size = 0 */
  93. 91 /* stack size = 2 */
  94. 92 .L__stack_usage = 2
  95. 93 0004 FB01 movw r30,r22
  96. 94 0006 EC01 movw r28,r24
  97. 95 0008 AF85 ldd r26,Y+15
  98. 96 000a B889 ldd r27,Y+16
  99. 97 000c 4081 ld r20,Z
  100. 98 000e 5181 ldd r21,Z+1
  101. 99 0010 6281 ldd r22,Z+2
  102. 100 0012 7381 ldd r23,Z+3
  103. 101 0014 1596 adiw r26,5
  104. 102 0016 4D93 st X+,r20
  105. 103 0018 5D93 st X+,r21
  106. 104 001a 6D93 st X+,r22
  107. 105 001c 7C93 st X,r23
  108. 106 001e 1897 sbiw r26,5+3
  109. 107 .L9:
  110. 108 0020 A091 0000 lds r26,sja_base
  111. 109 0024 B091 0000 lds r27,sja_base+1
  112. 110 0028 8C91 ld r24,X
  113. 111 002a A091 0000 lds r26,sja_base
  114. 112 002e B091 0000 lds r27,sja_base+1
  115. 113 0032 80FD sbrc r24,0
  116. 114 0034 00C0 rjmp .L13
  117. GAS LISTING /tmp/cczkoS7A.s page 3
  118. 115 0036 C091 0000 lds r28,sja_base
  119. 116 003a D091 0000 lds r29,sja_base+1
  120. 117 003e 8881 ld r24,Y
  121. 118 0040 8160 ori r24,lo8(1)
  122. 119 0042 8C93 st X,r24
  123. 120 0044 00C0 rjmp .L9
  124. 121 .L13:
  125. 122 0046 8081 ld r24,Z
  126. 123 0048 5496 adiw r26,20
  127. 124 004a 8C93 st X,r24
  128. 125 004c A091 0000 lds r26,sja_base
  129. 126 0050 B091 0000 lds r27,sja_base+1
  130. 127 0054 8181 ldd r24,Z+1
  131. 128 0056 5596 adiw r26,21
  132. 129 0058 8C93 st X,r24
  133. 130 005a A091 0000 lds r26,sja_base
  134. 131 005e B091 0000 lds r27,sja_base+1
  135. 132 0062 8281 ldd r24,Z+2
  136. 133 0064 5696 adiw r26,22
  137. 134 0066 8C93 st X,r24
  138. 135 0068 A091 0000 lds r26,sja_base
  139. 136 006c B091 0000 lds r27,sja_base+1
  140. 137 0070 8381 ldd r24,Z+3
  141. 138 0072 5796 adiw r26,23
  142. 139 0074 8C93 st X,r24
  143. 140 0076 E091 0000 lds r30,sja_base
  144. 141 007a F091 0000 lds r31,sja_base+1
  145. 142 007e 88E0 ldi r24,lo8(8)
  146. 143 0080 8083 st Z,r24
  147. 144 .L11:
  148. 145 0082 E091 0000 lds r30,sja_base
  149. 146 0086 F091 0000 lds r31,sja_base+1
  150. 147 008a 1082 st Z,__zero_reg__
  151. 148 008c E091 0000 lds r30,sja_base
  152. 149 0090 F091 0000 lds r31,sja_base+1
  153. 150 0094 8081 ld r24,Z
  154. 151 0096 80FD sbrc r24,0
  155. 152 0098 00C0 rjmp .L11
  156. 153 /* epilogue start */
  157. 154 009a DF91 pop r29
  158. 155 009c CF91 pop r28
  159. 156 009e 0895 ret
  160. 157 .size SJASetAccMask, .-SJASetAccMask
  161. 158 .section .text.SJASetBaudrate,"ax",@progbits
  162. 159 .global SJASetBaudrate
  163. 160 .type SJASetBaudrate, @function
  164. 161 SJASetBaudrate:
  165. 162 /* prologue: function */
  166. 163 /* frame size = 0 */
  167. 164 /* stack size = 0 */
  168. 165 .L__stack_usage = 0
  169. 166 0000 DC01 movw r26,r24
  170. 167 0002 1F96 adiw r26,15
  171. 168 0004 ED91 ld r30,X+
  172. 169 0006 FC91 ld r31,X
  173. 170 0008 5097 sbiw r26,15+1
  174. 171 000a 4183 std Z+1,r20
  175. GAS LISTING /tmp/cczkoS7A.s page 4
  176. 172 000c 5283 std Z+2,r21
  177. 173 000e 6383 std Z+3,r22
  178. 174 0010 7483 std Z+4,r23
  179. 175 .L15:
  180. 176 0012 E091 0000 lds r30,sja_base
  181. 177 0016 F091 0000 lds r31,sja_base+1
  182. 178 001a 8081 ld r24,Z
  183. 179 001c 80FD sbrc r24,0
  184. 180 001e 00C0 rjmp .L33
  185. 181 0020 E091 0000 lds r30,sja_base
  186. 182 0024 F091 0000 lds r31,sja_base+1
  187. 183 0028 A091 0000 lds r26,sja_base
  188. 184 002c B091 0000 lds r27,sja_base+1
  189. 185 0030 8C91 ld r24,X
  190. 186 0032 8160 ori r24,lo8(1)
  191. 187 0034 8083 st Z,r24
  192. 188 0036 00C0 rjmp .L15
  193. 189 .L33:
  194. 190 0038 4930 cpi r20,9
  195. 191 003a 5105 cpc r21,__zero_reg__
  196. 192 003c 00F0 brlo .+2
  197. 193 003e 00C0 rjmp .L29
  198. 194 0040 FA01 movw r30,r20
  199. 195 0042 8827 clr r24
  200. 196 0044 E050 subi r30,pm_lo8(-(.L19))
  201. 197 0046 F040 sbci r31,pm_hi8(-(.L19))
  202. 198 0048 8040 sbci r24,pm_hh8(-(.L19))
  203. 199 004a 0C94 0000 jmp __tablejump2__
  204. 200 .section .progmem.gcc_sw_table.SJASetBaudrate,"a",@progbits
  205. 201 .p2align 1
  206. 202 .L19:
  207. 203 0000 0000 .word gs(.L18)
  208. 204 0002 0000 .word gs(.L20)
  209. 205 0004 0000 .word gs(.L21)
  210. 206 0006 0000 .word gs(.L22)
  211. 207 0008 0000 .word gs(.L23)
  212. 208 000a 0000 .word gs(.L24)
  213. 209 000c 0000 .word gs(.L25)
  214. 210 000e 0000 .word gs(.L26)
  215. 211 0010 0000 .word gs(.L27)
  216. 212 .section .text.SJASetBaudrate
  217. 213 .L18:
  218. 214 004e E091 0000 lds r30,sja_base
  219. 215 0052 F091 0000 lds r31,sja_base+1
  220. 216 0056 81E7 ldi r24,lo8(113)
  221. 217 0058 00C0 rjmp .L32
  222. 218 .L20:
  223. 219 005a E091 0000 lds r30,sja_base
  224. 220 005e F091 0000 lds r31,sja_base+1
  225. 221 0062 88E5 ldi r24,lo8(88)
  226. 222 0064 00C0 rjmp .L32
  227. 223 .L21:
  228. 224 0066 E091 0000 lds r30,sja_base
  229. 225 006a F091 0000 lds r31,sja_base+1
  230. 226 006e 89E4 ldi r24,lo8(73)
  231. 227 0070 00C0 rjmp .L32
  232. 228 .L22:
  233. GAS LISTING /tmp/cczkoS7A.s page 5
  234. 229 0072 E091 0000 lds r30,sja_base
  235. 230 0076 F091 0000 lds r31,sja_base+1
  236. 231 007a 84E4 ldi r24,lo8(68)
  237. 232 007c 00C0 rjmp .L32
  238. 233 .L23:
  239. 234 007e E091 0000 lds r30,sja_base
  240. 235 0082 F091 0000 lds r31,sja_base+1
  241. 236 0086 83E4 ldi r24,lo8(67)
  242. 237 0088 00C0 rjmp .L32
  243. 238 .L24:
  244. 239 008a E091 0000 lds r30,sja_base
  245. 240 008e F091 0000 lds r31,sja_base+1
  246. 241 0092 81E4 ldi r24,lo8(65)
  247. 242 0094 00C0 rjmp .L32
  248. 243 .L25:
  249. 244 0096 E091 0000 lds r30,sja_base
  250. 245 009a F091 0000 lds r31,sja_base+1
  251. 246 009e 80E4 ldi r24,lo8(64)
  252. 247 .L32:
  253. 248 00a0 8683 std Z+6,r24
  254. 249 00a2 E091 0000 lds r30,sja_base
  255. 250 00a6 F091 0000 lds r31,sja_base+1
  256. 251 00aa 8CE1 ldi r24,lo8(28)
  257. 252 00ac 00C0 rjmp .L31
  258. 253 .L26:
  259. 254 00ae E091 0000 lds r30,sja_base
  260. 255 00b2 F091 0000 lds r31,sja_base+1
  261. 256 00b6 80E4 ldi r24,lo8(64)
  262. 257 00b8 8683 std Z+6,r24
  263. 258 00ba E091 0000 lds r30,sja_base
  264. 259 00be F091 0000 lds r31,sja_base+1
  265. 260 00c2 86E1 ldi r24,lo8(22)
  266. 261 00c4 00C0 rjmp .L31
  267. 262 .L27:
  268. 263 00c6 E091 0000 lds r30,sja_base
  269. 264 00ca F091 0000 lds r31,sja_base+1
  270. 265 00ce 80E4 ldi r24,lo8(64)
  271. 266 00d0 8683 std Z+6,r24
  272. 267 00d2 E091 0000 lds r30,sja_base
  273. 268 00d6 F091 0000 lds r31,sja_base+1
  274. 269 00da 84E1 ldi r24,lo8(20)
  275. 270 .L31:
  276. 271 00dc 8783 std Z+7,r24
  277. 272 00de 80E0 ldi r24,0
  278. 273 00e0 00C0 rjmp .L28
  279. 274 .L29:
  280. 275 00e2 81E0 ldi r24,lo8(1)
  281. 276 .L28:
  282. 277 00e4 E091 0000 lds r30,sja_base
  283. 278 00e8 F091 0000 lds r31,sja_base+1
  284. 279 00ec 1082 st Z,__zero_reg__
  285. 280 00ee E091 0000 lds r30,sja_base
  286. 281 00f2 F091 0000 lds r31,sja_base+1
  287. 282 00f6 9081 ld r25,Z
  288. 283 00f8 90FD sbrc r25,0
  289. 284 00fa 00C0 rjmp .L28
  290. 285 /* epilogue start */
  291. GAS LISTING /tmp/cczkoS7A.s page 6
  292. 286 00fc 0895 ret
  293. 287 .size SJASetBaudrate, .-SJASetBaudrate
  294. 288 .section .text.CANBufferInit,"ax",@progbits
  295. 289 .global CANBufferInit
  296. 290 .type CANBufferInit, @function
  297. 291 CANBufferInit:
  298. 292 0000 0F93 push r16
  299. 293 0002 1F93 push r17
  300. 294 0004 CF93 push r28
  301. 295 0006 DF93 push r29
  302. 296 /* prologue: function */
  303. 297 /* frame size = 0 */
  304. 298 /* stack size = 4 */
  305. 299 .L__stack_usage = 4
  306. 300 0008 EC01 movw r28,r24
  307. 301 000a 8B01 movw r16,r22
  308. 302 000c 60E0 ldi r22,0
  309. 303 000e 70E0 ldi r23,0
  310. 304 0010 0C96 adiw r24,12
  311. 305 0012 0E94 0000 call NutSemInit
  312. 306 0016 6FE3 ldi r22,lo8(63)
  313. 307 0018 70E0 ldi r23,0
  314. 308 001a CE01 movw r24,r28
  315. 309 001c 0896 adiw r24,8
  316. 310 001e 0E94 0000 call NutSemInit
  317. 311 0022 8FE0 ldi r24,lo8(15)
  318. 312 0024 809F mul r24,r16
  319. 313 0026 B001 movw r22,r0
  320. 314 0028 819F mul r24,r17
  321. 315 002a 700D add r23,r0
  322. 316 002c 1124 clr __zero_reg__
  323. 317 002e 80E0 ldi r24,lo8(heapFreeList)
  324. 318 0030 90E0 ldi r25,hi8(heapFreeList)
  325. 319 0032 0E94 0000 call NutHeapRootAlloc
  326. 320 0036 9983 std Y+1,r25
  327. 321 0038 8883 st Y,r24
  328. 322 003a 1B83 std Y+3,r17
  329. 323 003c 0A83 std Y+2,r16
  330. 324 003e 1F82 std Y+7,__zero_reg__
  331. 325 0040 1E82 std Y+6,__zero_reg__
  332. 326 0042 1D82 std Y+5,__zero_reg__
  333. 327 0044 1C82 std Y+4,__zero_reg__
  334. 328 /* epilogue start */
  335. 329 0046 DF91 pop r29
  336. 330 0048 CF91 pop r28
  337. 331 004a 1F91 pop r17
  338. 332 004c 0F91 pop r16
  339. 333 004e 0895 ret
  340. 334 .size CANBufferInit, .-CANBufferInit
  341. 335 .section .rodata.str1.1,"aMS",@progbits,1
  342. 336 .LC0:
  343. 337 0000 736A 6163 .string "sjacantx"
  344. 337 616E 7478
  345. 337 00
  346. 338 .section .text.SJAInit,"ax",@progbits
  347. 339 .global SJAInit
  348. 340 .type SJAInit, @function
  349. GAS LISTING /tmp/cczkoS7A.s page 7
  350. 341 SJAInit:
  351. 342 0000 0F93 push r16
  352. 343 0002 1F93 push r17
  353. 344 0004 CF93 push r28
  354. 345 0006 DF93 push r29
  355. 346 /* prologue: function */
  356. 347 /* frame size = 0 */
  357. 348 /* stack size = 4 */
  358. 349 .L__stack_usage = 4
  359. 350 0008 8C01 movw r16,r24
  360. 351 000a DC01 movw r26,r24
  361. 352 000c 1C96 adiw r26,12
  362. 353 000e 8D91 ld r24,X+
  363. 354 0010 9C91 ld r25,X
  364. 355 0012 1D97 sbiw r26,12+1
  365. 356 0014 9093 0000 sts sja_base+1,r25
  366. 357 0018 8093 0000 sts sja_base,r24
  367. 358 001c 8091 0000 lds r24,sja_base
  368. 359 0020 9091 0000 lds r25,sja_base+1
  369. 360 0024 892B or r24,r25
  370. 361 0026 01F4 brne .L36
  371. 362 0028 80E0 ldi r24,0
  372. 363 002a 98E8 ldi r25,lo8(-120)
  373. 364 002c 9093 0000 sts sja_base+1,r25
  374. 365 0030 8093 0000 sts sja_base,r24
  375. 366 .L36:
  376. 367 0034 F801 movw r30,r16
  377. 368 0036 C785 ldd r28,Z+15
  378. 369 0038 D089 ldd r29,Z+16
  379. 370 003a 0188 ldd __tmp_reg__,Z+17
  380. 371 003c F289 ldd r31,Z+18
  381. 372 003e E02D mov r30,__tmp_reg__
  382. 373 0040 88E1 ldi r24,lo8(24)
  383. 374 0042 DF01 movw r26,r30
  384. 375 0:
  385. 376 0044 1D92 st X+,__zero_reg__
  386. 377 0046 8A95 dec r24
  387. 378 0048 01F4 brne 0b
  388. 379 004a 60E4 ldi r22,lo8(64)
  389. 380 004c 70E0 ldi r23,0
  390. 381 004e 80E0 ldi r24,lo8(CAN_RX_BUF)
  391. 382 0050 90E0 ldi r25,hi8(CAN_RX_BUF)
  392. 383 0052 0E94 0000 call CANBufferInit
  393. 384 0056 60E4 ldi r22,lo8(64)
  394. 385 0058 70E0 ldi r23,0
  395. 386 005a 80E0 ldi r24,lo8(CAN_TX_BUF)
  396. 387 005c 90E0 ldi r25,hi8(CAN_TX_BUF)
  397. 388 005e 0E94 0000 call CANBufferInit
  398. 389 .L37:
  399. 390 0062 E091 0000 lds r30,sja_base
  400. 391 0066 F091 0000 lds r31,sja_base+1
  401. 392 006a 8081 ld r24,Z
  402. 393 006c E091 0000 lds r30,sja_base
  403. 394 0070 F091 0000 lds r31,sja_base+1
  404. 395 0074 80FD sbrc r24,0
  405. 396 0076 00C0 rjmp .L57
  406. 397 0078 A091 0000 lds r26,sja_base
  407. GAS LISTING /tmp/cczkoS7A.s page 8
  408. 398 007c B091 0000 lds r27,sja_base+1
  409. 399 0080 8C91 ld r24,X
  410. 400 0082 8160 ori r24,lo8(1)
  411. 401 0084 8083 st Z,r24
  412. 402 0086 00C0 rjmp .L37
  413. 403 .L57:
  414. 404 0088 88EC ldi r24,lo8(-56)
  415. 405 008a 878F std Z+31,r24
  416. 406 008c E091 0000 lds r30,sja_base
  417. 407 0090 F091 0000 lds r31,sja_base+1
  418. 408 0094 1482 std Z+4,__zero_reg__
  419. 409 0096 E091 0000 lds r30,sja_base
  420. 410 009a F091 0000 lds r31,sja_base+1
  421. 411 009e 8985 ldd r24,Y+9
  422. 412 00a0 808B std Z+16,r24
  423. 413 00a2 E091 0000 lds r30,sja_base
  424. 414 00a6 F091 0000 lds r31,sja_base+1
  425. 415 00aa 8A85 ldd r24,Y+10
  426. 416 00ac 818B std Z+17,r24
  427. 417 00ae E091 0000 lds r30,sja_base
  428. 418 00b2 F091 0000 lds r31,sja_base+1
  429. 419 00b6 8B85 ldd r24,Y+11
  430. 420 00b8 828B std Z+18,r24
  431. 421 00ba E091 0000 lds r30,sja_base
  432. 422 00be F091 0000 lds r31,sja_base+1
  433. 423 00c2 8C85 ldd r24,Y+12
  434. 424 00c4 838B std Z+19,r24
  435. 425 00c6 E091 0000 lds r30,sja_base
  436. 426 00ca F091 0000 lds r31,sja_base+1
  437. 427 00ce 8D81 ldd r24,Y+5
  438. 428 00d0 848B std Z+20,r24
  439. 429 00d2 E091 0000 lds r30,sja_base
  440. 430 00d6 F091 0000 lds r31,sja_base+1
  441. 431 00da 8E81 ldd r24,Y+6
  442. 432 00dc 858B std Z+21,r24
  443. 433 00de E091 0000 lds r30,sja_base
  444. 434 00e2 F091 0000 lds r31,sja_base+1
  445. 435 00e6 8F81 ldd r24,Y+7
  446. 436 00e8 868B std Z+22,r24
  447. 437 00ea E091 0000 lds r30,sja_base
  448. 438 00ee F091 0000 lds r31,sja_base+1
  449. 439 00f2 8885 ldd r24,Y+8
  450. 440 00f4 878B std Z+23,r24
  451. 441 00f6 8981 ldd r24,Y+1
  452. 442 00f8 9A81 ldd r25,Y+2
  453. 443 00fa AB81 ldd r26,Y+3
  454. 444 00fc BC81 ldd r27,Y+4
  455. 445 00fe 8930 cpi r24,9
  456. 446 0100 9105 cpc r25,__zero_reg__
  457. 447 0102 00F0 brlo .+2
  458. 448 0104 00C0 rjmp .L53
  459. 449 0106 FC01 movw r30,r24
  460. 450 0108 8827 clr r24
  461. 451 010a E050 subi r30,pm_lo8(-(.L41))
  462. 452 010c F040 sbci r31,pm_hi8(-(.L41))
  463. 453 010e 8040 sbci r24,pm_hh8(-(.L41))
  464. 454 0110 0C94 0000 jmp __tablejump2__
  465. GAS LISTING /tmp/cczkoS7A.s page 9
  466. 455 .section .progmem.gcc_sw_table.SJAInit,"a",@progbits
  467. 456 .p2align 1
  468. 457 .L41:
  469. 458 0000 0000 .word gs(.L40)
  470. 459 0002 0000 .word gs(.L42)
  471. 460 0004 0000 .word gs(.L43)
  472. 461 0006 0000 .word gs(.L44)
  473. 462 0008 0000 .word gs(.L45)
  474. 463 000a 0000 .word gs(.L46)
  475. 464 000c 0000 .word gs(.L47)
  476. 465 000e 0000 .word gs(.L48)
  477. 466 0010 0000 .word gs(.L49)
  478. 467 .section .text.SJAInit
  479. 468 .L40:
  480. 469 0114 E091 0000 lds r30,sja_base
  481. 470 0118 F091 0000 lds r31,sja_base+1
  482. 471 011c 81E7 ldi r24,lo8(113)
  483. 472 011e 00C0 rjmp .L56
  484. 473 .L42:
  485. 474 0120 E091 0000 lds r30,sja_base
  486. 475 0124 F091 0000 lds r31,sja_base+1
  487. 476 0128 88E5 ldi r24,lo8(88)
  488. 477 012a 00C0 rjmp .L56
  489. 478 .L43:
  490. 479 012c E091 0000 lds r30,sja_base
  491. 480 0130 F091 0000 lds r31,sja_base+1
  492. 481 0134 89E4 ldi r24,lo8(73)
  493. 482 0136 00C0 rjmp .L56
  494. 483 .L44:
  495. 484 0138 E091 0000 lds r30,sja_base
  496. 485 013c F091 0000 lds r31,sja_base+1
  497. 486 0140 84E4 ldi r24,lo8(68)
  498. 487 0142 00C0 rjmp .L56
  499. 488 .L45:
  500. 489 0144 E091 0000 lds r30,sja_base
  501. 490 0148 F091 0000 lds r31,sja_base+1
  502. 491 014c 83E4 ldi r24,lo8(67)
  503. 492 014e 00C0 rjmp .L56
  504. 493 .L46:
  505. 494 0150 E091 0000 lds r30,sja_base
  506. 495 0154 F091 0000 lds r31,sja_base+1
  507. 496 0158 81E4 ldi r24,lo8(65)
  508. 497 015a 00C0 rjmp .L56
  509. 498 .L47:
  510. 499 015c E091 0000 lds r30,sja_base
  511. 500 0160 F091 0000 lds r31,sja_base+1
  512. 501 0164 80E4 ldi r24,lo8(64)
  513. 502 .L56:
  514. 503 0166 8683 std Z+6,r24
  515. 504 0168 E091 0000 lds r30,sja_base
  516. 505 016c F091 0000 lds r31,sja_base+1
  517. 506 0170 8CE1 ldi r24,lo8(28)
  518. 507 0172 00C0 rjmp .L55
  519. 508 .L48:
  520. 509 0174 E091 0000 lds r30,sja_base
  521. 510 0178 F091 0000 lds r31,sja_base+1
  522. 511 017c 80E4 ldi r24,lo8(64)
  523. GAS LISTING /tmp/cczkoS7A.s page 10
  524. 512 017e 8683 std Z+6,r24
  525. 513 0180 E091 0000 lds r30,sja_base
  526. 514 0184 F091 0000 lds r31,sja_base+1
  527. 515 0188 86E1 ldi r24,lo8(22)
  528. 516 018a 00C0 rjmp .L55
  529. 517 .L49:
  530. 518 018c E091 0000 lds r30,sja_base
  531. 519 0190 F091 0000 lds r31,sja_base+1
  532. 520 0194 80E4 ldi r24,lo8(64)
  533. 521 0196 8683 std Z+6,r24
  534. 522 0198 E091 0000 lds r30,sja_base
  535. 523 019c F091 0000 lds r31,sja_base+1
  536. 524 01a0 84E1 ldi r24,lo8(20)
  537. 525 .L55:
  538. 526 01a2 8783 std Z+7,r24
  539. 527 01a4 E091 0000 lds r30,sja_base
  540. 528 01a8 F091 0000 lds r31,sja_base+1
  541. 529 01ac 8AE1 ldi r24,lo8(26)
  542. 530 01ae 8087 std Z+8,r24
  543. 531 01b0 E091 0000 lds r30,sja_base
  544. 532 01b4 F091 0000 lds r31,sja_base+1
  545. 533 01b8 8FE0 ldi r24,lo8(15)
  546. 534 01ba 8483 std Z+4,r24
  547. 535 01bc E091 0000 lds r30,sja_base
  548. 536 01c0 F091 0000 lds r31,sja_base+1
  549. 537 01c4 88E0 ldi r24,lo8(8)
  550. 538 01c6 8083 st Z,r24
  551. 539 .L51:
  552. 540 01c8 E091 0000 lds r30,sja_base
  553. 541 01cc F091 0000 lds r31,sja_base+1
  554. 542 01d0 1082 st Z,__zero_reg__
  555. 543 01d2 E091 0000 lds r30,sja_base
  556. 544 01d6 F091 0000 lds r31,sja_base+1
  557. 545 01da 8081 ld r24,Z
  558. 546 01dc 80FD sbrc r24,0
  559. 547 01de 00C0 rjmp .L51
  560. 548 /* #APP */
  561. 549 ; 701 "../../nut/arch/avr/dev/sja1000.c" 1
  562. 550 01e0 0FB6 in __tmp_reg__, __SREG__
  563. 551 01e2 F894 cli
  564. 552 01e4 0F92 push __tmp_reg__
  565. 553
  566. 554 ; 0 "" 2
  567. 555 /* #NOAPP */
  568. 556 01e6 A801 movw r20,r16
  569. 557 01e8 60E0 ldi r22,lo8(gs(SJAInterrupt))
  570. 558 01ea 70E0 ldi r23,hi8(gs(SJAInterrupt))
  571. 559 01ec 80E0 ldi r24,lo8(sig_INTERRUPT7)
  572. 560 01ee 90E0 ldi r25,hi8(sig_INTERRUPT7)
  573. 561 01f0 0E94 0000 call NutRegisterIrqHandler
  574. 562 01f4 EC01 movw r28,r24
  575. 563 01f6 892B or r24,r25
  576. 564 01f8 01F0 breq .L52
  577. 565 /* #APP */
  578. 566 ; 704 "../../nut/arch/avr/dev/sja1000.c" 1
  579. 567 01fa 0F90 pop __tmp_reg__
  580. 568 01fc 0FBE out __SREG__, __tmp_reg__
  581. GAS LISTING /tmp/cczkoS7A.s page 11
  582. 569
  583. 570 ; 0 "" 2
  584. 571 /* #NOAPP */
  585. 572 01fe CFEF ldi r28,lo8(-1)
  586. 573 0200 DFEF ldi r29,lo8(-1)
  587. 574 0202 00C0 rjmp .L39
  588. 575 .L52:
  589. 576 0204 EF98 cbi 0x1d,7
  590. 577 0206 8091 6A00 lds r24,106
  591. 578 020a 8F7B andi r24,lo8(-65)
  592. 579 020c 8093 6A00 sts 106,r24
  593. 580 0210 8091 6A00 lds r24,106
  594. 581 0214 8F77 andi r24,lo8(127)
  595. 582 0216 8093 6A00 sts 106,r24
  596. 583 021a E091 0000 lds r30,sja_base
  597. 584 021e F091 0000 lds r31,sja_base+1
  598. 585 0222 8381 ldd r24,Z+3
  599. 586 0224 EF9A sbi 0x1d,7
  600. 587 0226 779A sbi 0xe,7
  601. 588 0228 20E0 ldi r18,0
  602. 589 022a 31E0 ldi r19,lo8(1)
  603. 590 022c A801 movw r20,r16
  604. 591 022e 60E0 ldi r22,lo8(gs(CAN_Tx))
  605. 592 0230 70E0 ldi r23,hi8(gs(CAN_Tx))
  606. 593 0232 80E0 ldi r24,lo8(.LC0)
  607. 594 0234 90E0 ldi r25,hi8(.LC0)
  608. 595 0236 0E94 0000 call NutThreadCreate
  609. 596 /* #APP */
  610. 597 ; 724 "../../nut/arch/avr/dev/sja1000.c" 1
  611. 598 023a 0F90 pop __tmp_reg__
  612. 599 023c 0FBE out __SREG__, __tmp_reg__
  613. 600
  614. 601 ; 0 "" 2
  615. 602 /* #NOAPP */
  616. 603 023e 00C0 rjmp .L39
  617. 604 .L53:
  618. 605 0240 C7E0 ldi r28,lo8(7)
  619. 606 0242 D0E0 ldi r29,0
  620. 607 .L39:
  621. 608 0244 CE01 movw r24,r28
  622. 609 /* epilogue start */
  623. 610 0246 DF91 pop r29
  624. 611 0248 CF91 pop r28
  625. 612 024a 1F91 pop r17
  626. 613 024c 0F91 pop r16
  627. 614 024e 0895 ret
  628. 615 .size SJAInit, .-SJAInit
  629. 616 .section .text.CANBufferGetMutex,"ax",@progbits
  630. 617 .global CANBufferGetMutex
  631. 618 .type CANBufferGetMutex, @function
  632. 619 CANBufferGetMutex:
  633. 620 0000 0F93 push r16
  634. 621 0002 1F93 push r17
  635. 622 0004 CF93 push r28
  636. 623 0006 DF93 push r29
  637. 624 /* prologue: function */
  638. 625 /* frame size = 0 */
  639. GAS LISTING /tmp/cczkoS7A.s page 12
  640. 626 /* stack size = 4 */
  641. 627 .L__stack_usage = 4
  642. 628 0008 8C01 movw r16,r24
  643. 629 000a EB01 movw r28,r22
  644. 630 000c CB01 movw r24,r22
  645. 631 000e 0C96 adiw r24,12
  646. 632 0010 0E94 0000 call NutSemWait
  647. 633 0014 2C81 ldd r18,Y+4
  648. 634 0016 3D81 ldd r19,Y+5
  649. 635 0018 2115 cp r18,__zero_reg__
  650. 636 001a 3105 cpc r19,__zero_reg__
  651. 637 001c 01F0 breq .L59
  652. 638 001e 8E81 ldd r24,Y+6
  653. 639 0020 9F81 ldd r25,Y+7
  654. 640 0022 4FE0 ldi r20,lo8(15)
  655. 641 0024 489F mul r20,r24
  656. 642 0026 B001 movw r22,r0
  657. 643 0028 499F mul r20,r25
  658. 644 002a 700D add r23,r0
  659. 645 002c 1124 clr __zero_reg__
  660. 646 002e E881 ld r30,Y
  661. 647 0030 F981 ldd r31,Y+1
  662. 648 0032 E60F add r30,r22
  663. 649 0034 F71F adc r31,r23
  664. 650 0036 D801 movw r26,r16
  665. 651 0:
  666. 652 0038 0190 ld r0,Z+
  667. 653 003a 0D92 st X+,r0
  668. 654 003c 4A95 dec r20
  669. 655 003e 01F4 brne 0b
  670. 656 0040 0196 adiw r24,1
  671. 657 0042 9F83 std Y+7,r25
  672. 658 0044 8E83 std Y+6,r24
  673. 659 0046 6A81 ldd r22,Y+2
  674. 660 0048 7B81 ldd r23,Y+3
  675. 661 004a 8617 cp r24,r22
  676. 662 004c 9707 cpc r25,r23
  677. 663 004e 00F0 brlo .L60
  678. 664 0050 0E94 0000 call __udivmodhi4
  679. 665 0054 9F83 std Y+7,r25
  680. 666 0056 8E83 std Y+6,r24
  681. 667 .L60:
  682. 668 0058 2150 subi r18,1
  683. 669 005a 3109 sbc r19,__zero_reg__
  684. 670 005c 3D83 std Y+5,r19
  685. 671 005e 2C83 std Y+4,r18
  686. 672 .L59:
  687. 673 0060 CE01 movw r24,r28
  688. 674 0062 0896 adiw r24,8
  689. 675 0064 0E94 0000 call NutSemPost
  690. 676 0068 C801 movw r24,r16
  691. 677 /* epilogue start */
  692. 678 006a DF91 pop r29
  693. 679 006c CF91 pop r28
  694. 680 006e 1F91 pop r17
  695. 681 0070 0F91 pop r16
  696. 682 0072 0895 ret
  697. GAS LISTING /tmp/cczkoS7A.s page 13
  698. 683 .size CANBufferGetMutex, .-CANBufferGetMutex
  699. 684 .section .text.CANBufferPutMutex,"ax",@progbits
  700. 685 .global CANBufferPutMutex
  701. 686 .type CANBufferPutMutex, @function
  702. 687 CANBufferPutMutex:
  703. 688 0000 0F93 push r16
  704. 689 0002 1F93 push r17
  705. 690 0004 CF93 push r28
  706. 691 0006 DF93 push r29
  707. 692 /* prologue: function */
  708. 693 /* frame size = 0 */
  709. 694 /* stack size = 4 */
  710. 695 .L__stack_usage = 4
  711. 696 0008 EC01 movw r28,r24
  712. 697 000a 8B01 movw r16,r22
  713. 698 000c 0896 adiw r24,8
  714. 699 000e 0E94 0000 call NutSemWait
  715. 700 0012 2C81 ldd r18,Y+4
  716. 701 0014 3D81 ldd r19,Y+5
  717. 702 0016 6A81 ldd r22,Y+2
  718. 703 0018 7B81 ldd r23,Y+3
  719. 704 001a 2617 cp r18,r22
  720. 705 001c 3707 cpc r19,r23
  721. 706 001e 00F4 brsh .L65
  722. 707 0020 8E81 ldd r24,Y+6
  723. 708 0022 9F81 ldd r25,Y+7
  724. 709 0024 820F add r24,r18
  725. 710 0026 931F adc r25,r19
  726. 711 0028 0E94 0000 call __udivmodhi4
  727. 712 002c AC01 movw r20,r24
  728. 713 002e 9FE0 ldi r25,lo8(15)
  729. 714 0030 949F mul r25,r20
  730. 715 0032 9001 movw r18,r0
  731. 716 0034 959F mul r25,r21
  732. 717 0036 300D add r19,r0
  733. 718 0038 1124 clr __zero_reg__
  734. 719 003a A881 ld r26,Y
  735. 720 003c B981 ldd r27,Y+1
  736. 721 003e A20F add r26,r18
  737. 722 0040 B31F adc r27,r19
  738. 723 0042 F801 movw r30,r16
  739. 724 0:
  740. 725 0044 0190 ld r0,Z+
  741. 726 0046 0D92 st X+,r0
  742. 727 0048 9A95 dec r25
  743. 728 004a 01F4 brne 0b
  744. 729 004c 8C81 ldd r24,Y+4
  745. 730 004e 9D81 ldd r25,Y+5
  746. 731 0050 0196 adiw r24,1
  747. 732 0052 9D83 std Y+5,r25
  748. 733 0054 8C83 std Y+4,r24
  749. 734 .L65:
  750. 735 0056 CE01 movw r24,r28
  751. 736 0058 0C96 adiw r24,12
  752. 737 /* epilogue start */
  753. 738 005a DF91 pop r29
  754. 739 005c CF91 pop r28
  755. GAS LISTING /tmp/cczkoS7A.s page 14
  756. 740 005e 1F91 pop r17
  757. 741 0060 0F91 pop r16
  758. 742 0062 0C94 0000 jmp NutSemPost
  759. 743 .size CANBufferPutMutex, .-CANBufferPutMutex
  760. 744 .section .text.SJAOutput,"ax",@progbits
  761. 745 .global SJAOutput
  762. 746 .type SJAOutput, @function
  763. 747 SJAOutput:
  764. 748 0000 CF93 push r28
  765. 749 0002 DF93 push r29
  766. 750 /* prologue: function */
  767. 751 /* frame size = 0 */
  768. 752 /* stack size = 2 */
  769. 753 .L__stack_usage = 2
  770. 754 0004 FC01 movw r30,r24
  771. 755 0006 C189 ldd r28,Z+17
  772. 756 0008 D289 ldd r29,Z+18
  773. 757 000a 80E0 ldi r24,lo8(CAN_TX_BUF)
  774. 758 000c 90E0 ldi r25,hi8(CAN_TX_BUF)
  775. 759 000e 0E94 0000 call CANBufferPutMutex
  776. 760 0012 CE01 movw r24,r28
  777. 761 0014 0296 adiw r24,2
  778. 762 /* epilogue start */
  779. 763 0016 DF91 pop r29
  780. 764 0018 CF91 pop r28
  781. 765 001a 0C94 0000 jmp NutEventPostAsync
  782. 766 .size SJAOutput, .-SJAOutput
  783. 767 .section .text.CANBufferGet,"ax",@progbits
  784. 768 .global CANBufferGet
  785. 769 .type CANBufferGet, @function
  786. 770 CANBufferGet:
  787. 771 0000 0F93 push r16
  788. 772 0002 1F93 push r17
  789. 773 0004 CF93 push r28
  790. 774 0006 DF93 push r29
  791. 775 /* prologue: function */
  792. 776 /* frame size = 0 */
  793. 777 /* stack size = 4 */
  794. 778 .L__stack_usage = 4
  795. 779 0008 8C01 movw r16,r24
  796. 780 000a EB01 movw r28,r22
  797. 781 000c 2C81 ldd r18,Y+4
  798. 782 000e 3D81 ldd r19,Y+5
  799. 783 0010 2115 cp r18,__zero_reg__
  800. 784 0012 3105 cpc r19,__zero_reg__
  801. 785 0014 01F0 breq .L67
  802. 786 0016 8E81 ldd r24,Y+6
  803. 787 0018 9F81 ldd r25,Y+7
  804. 788 001a 4FE0 ldi r20,lo8(15)
  805. 789 001c 489F mul r20,r24
  806. 790 001e B001 movw r22,r0
  807. 791 0020 499F mul r20,r25
  808. 792 0022 700D add r23,r0
  809. 793 0024 1124 clr __zero_reg__
  810. 794 0026 E881 ld r30,Y
  811. 795 0028 F981 ldd r31,Y+1
  812. 796 002a E60F add r30,r22
  813. GAS LISTING /tmp/cczkoS7A.s page 15
  814. 797 002c F71F adc r31,r23
  815. 798 002e D801 movw r26,r16
  816. 799 0:
  817. 800 0030 0190 ld r0,Z+
  818. 801 0032 0D92 st X+,r0
  819. 802 0034 4A95 dec r20
  820. 803 0036 01F4 brne 0b
  821. 804 0038 0196 adiw r24,1
  822. 805 003a 9F83 std Y+7,r25
  823. 806 003c 8E83 std Y+6,r24
  824. 807 003e 6A81 ldd r22,Y+2
  825. 808 0040 7B81 ldd r23,Y+3
  826. 809 0042 8617 cp r24,r22
  827. 810 0044 9707 cpc r25,r23
  828. 811 0046 00F0 brlo .L69
  829. 812 0048 0E94 0000 call __udivmodhi4
  830. 813 004c 9F83 std Y+7,r25
  831. 814 004e 8E83 std Y+6,r24
  832. 815 .L69:
  833. 816 0050 2150 subi r18,1
  834. 817 0052 3109 sbc r19,__zero_reg__
  835. 818 0054 3D83 std Y+5,r19
  836. 819 0056 2C83 std Y+4,r18
  837. 820 .L67:
  838. 821 0058 C801 movw r24,r16
  839. 822 /* epilogue start */
  840. 823 005a DF91 pop r29
  841. 824 005c CF91 pop r28
  842. 825 005e 1F91 pop r17
  843. 826 0060 0F91 pop r16
  844. 827 0062 0895 ret
  845. 828 .size CANBufferGet, .-CANBufferGet
  846. 829 .section .text.SJAInput,"ax",@progbits
  847. 830 .global SJAInput
  848. 831 .type SJAInput, @function
  849. 832 SJAInput:
  850. 833 0000 CF92 push r12
  851. 834 0002 DF92 push r13
  852. 835 0004 EF92 push r14
  853. 836 0006 FF92 push r15
  854. 837 0008 0F93 push r16
  855. 838 000a 1F93 push r17
  856. 839 000c CF93 push r28
  857. 840 000e DF93 push r29
  858. 841 0010 CDB7 in r28,__SP_L__
  859. 842 0012 DEB7 in r29,__SP_H__
  860. 843 0014 2F97 sbiw r28,15
  861. 844 0016 0FB6 in __tmp_reg__,__SREG__
  862. 845 0018 F894 cli
  863. 846 001a DEBF out __SP_H__,r29
  864. 847 001c 0FBE out __SREG__,__tmp_reg__
  865. 848 001e CDBF out __SP_L__,r28
  866. 849 /* prologue: function */
  867. 850 /* frame size = 15 */
  868. 851 /* stack size = 23 */
  869. 852 .L__stack_usage = 23
  870. 853 0020 8C01 movw r16,r24
  871. GAS LISTING /tmp/cczkoS7A.s page 16
  872. 854 0022 6B01 movw r12,r22
  873. 855 0024 DC01 movw r26,r24
  874. 856 0026 5196 adiw r26,17
  875. 857 0028 ED90 ld r14,X+
  876. 858 002a FC90 ld r15,X
  877. 859 002c 5297 sbiw r26,17+1
  878. 860 .L79:
  879. 861 002e 8091 0000 lds r24,CAN_RX_BUF+4
  880. 862 0032 9091 0000 lds r25,CAN_RX_BUF+4+1
  881. 863 0036 892B or r24,r25
  882. 864 0038 01F0 breq .L74
  883. 865 .L78:
  884. 866 /* #APP */
  885. 867 ; 280 "../../nut/arch/avr/dev/sja1000.c" 1
  886. 868 003a 0FB6 in __tmp_reg__, __SREG__
  887. 869 003c F894 cli
  888. 870 003e 0F92 push __tmp_reg__
  889. 871
  890. 872 ; 0 "" 2
  891. 873 /* #NOAPP */
  892. 874 0040 8091 0000 lds r24,CAN_RX_BUF+4
  893. 875 0044 9091 0000 lds r25,CAN_RX_BUF+4+1
  894. 876 0048 892B or r24,r25
  895. 877 004a 01F4 brne .L75
  896. 878 004c 80E0 ldi r24,0
  897. 879 004e 00C0 rjmp .L76
  898. 880 .L74:
  899. 881 0050 D801 movw r26,r16
  900. 882 0052 1F96 adiw r26,15
  901. 883 0054 ED91 ld r30,X+
  902. 884 0056 FC91 ld r31,X
  903. 885 0058 5097 sbiw r26,15+1
  904. 886 005a 4585 ldd r20,Z+13
  905. 887 005c 5685 ldd r21,Z+14
  906. 888 005e 6785 ldd r22,Z+15
  907. 889 0060 7089 ldd r23,Z+16
  908. 890 0062 C701 movw r24,r14
  909. 891 0064 0E94 0000 call NutEventWait
  910. 892 0068 892B or r24,r25
  911. 893 006a 01F0 breq .L78
  912. 894 006c 81E0 ldi r24,lo8(1)
  913. 895 006e 00C0 rjmp .L77
  914. 896 .L75:
  915. 897 0070 60E0 ldi r22,lo8(CAN_RX_BUF)
  916. 898 0072 70E0 ldi r23,hi8(CAN_RX_BUF)
  917. 899 0074 CE01 movw r24,r28
  918. 900 0076 0196 adiw r24,1
  919. 901 0078 0E94 0000 call CANBufferGet
  920. 902 007c 8FE0 ldi r24,lo8(15)
  921. 903 007e FE01 movw r30,r28
  922. 904 0080 3196 adiw r30,1
  923. 905 0082 D601 movw r26,r12
  924. 906 0:
  925. 907 0084 0190 ld r0,Z+
  926. 908 0086 0D92 st X+,r0
  927. 909 0088 8A95 dec r24
  928. 910 008a 01F4 brne 0b
  929. GAS LISTING /tmp/cczkoS7A.s page 17
  930. 911 008c 81E0 ldi r24,lo8(1)
  931. 912 .L76:
  932. 913 /* #APP */
  933. 914 ; 286 "../../nut/arch/avr/dev/sja1000.c" 1
  934. 915 008e 0F90 pop __tmp_reg__
  935. 916 0090 0FBE out __SREG__, __tmp_reg__
  936. 917
  937. 918 ; 0 "" 2
  938. 919 /* #NOAPP */
  939. 920 0092 8823 tst r24
  940. 921 0094 01F0 breq .L79
  941. 922 0096 E091 0000 lds r30,sja_base
  942. 923 009a F091 0000 lds r31,sja_base+1
  943. 924 009e 8481 ldd r24,Z+4
  944. 925 00a0 8160 ori r24,lo8(1)
  945. 926 00a2 8483 std Z+4,r24
  946. 927 00a4 80E0 ldi r24,0
  947. 928 .L77:
  948. 929 /* epilogue start */
  949. 930 00a6 2F96 adiw r28,15
  950. 931 00a8 0FB6 in __tmp_reg__,__SREG__
  951. 932 00aa F894 cli
  952. 933 00ac DEBF out __SP_H__,r29
  953. 934 00ae 0FBE out __SREG__,__tmp_reg__
  954. 935 00b0 CDBF out __SP_L__,r28
  955. 936 00b2 DF91 pop r29
  956. 937 00b4 CF91 pop r28
  957. 938 00b6 1F91 pop r17
  958. 939 00b8 0F91 pop r16
  959. 940 00ba FF90 pop r15
  960. 941 00bc EF90 pop r14
  961. 942 00be DF90 pop r13
  962. 943 00c0 CF90 pop r12
  963. 944 00c2 0895 ret
  964. 945 .size SJAInput, .-SJAInput
  965. 946 .section .text.CANBufferPut,"ax",@progbits
  966. 947 .global CANBufferPut
  967. 948 .type CANBufferPut, @function
  968. 949 CANBufferPut:
  969. 950 0000 CF93 push r28
  970. 951 0002 DF93 push r29
  971. 952 /* prologue: function */
  972. 953 /* frame size = 0 */
  973. 954 /* stack size = 2 */
  974. 955 .L__stack_usage = 2
  975. 956 0004 EC01 movw r28,r24
  976. 957 0006 FB01 movw r30,r22
  977. 958 0008 2C81 ldd r18,Y+4
  978. 959 000a 3D81 ldd r19,Y+5
  979. 960 000c 6A81 ldd r22,Y+2
  980. 961 000e 7B81 ldd r23,Y+3
  981. 962 0010 2617 cp r18,r22
  982. 963 0012 3707 cpc r19,r23
  983. 964 0014 00F4 brsh .L83
  984. 965 0016 8E81 ldd r24,Y+6
  985. 966 0018 9F81 ldd r25,Y+7
  986. 967 001a 820F add r24,r18
  987. GAS LISTING /tmp/cczkoS7A.s page 18
  988. 968 001c 931F adc r25,r19
  989. 969 001e 0E94 0000 call __udivmodhi4
  990. 970 0022 AC01 movw r20,r24
  991. 971 0024 9FE0 ldi r25,lo8(15)
  992. 972 0026 949F mul r25,r20
  993. 973 0028 9001 movw r18,r0
  994. 974 002a 959F mul r25,r21
  995. 975 002c 300D add r19,r0
  996. 976 002e 1124 clr __zero_reg__
  997. 977 0030 A881 ld r26,Y
  998. 978 0032 B981 ldd r27,Y+1
  999. 979 0034 A20F add r26,r18
  1000. 980 0036 B31F adc r27,r19
  1001. 981 0:
  1002. 982 0038 0190 ld r0,Z+
  1003. 983 003a 0D92 st X+,r0
  1004. 984 003c 9A95 dec r25
  1005. 985 003e 01F4 brne 0b
  1006. 986 0040 8C81 ldd r24,Y+4
  1007. 987 0042 9D81 ldd r25,Y+5
  1008. 988 0044 0196 adiw r24,1
  1009. 989 0046 9D83 std Y+5,r25
  1010. 990 0048 8C83 std Y+4,r24
  1011. 991 .L83:
  1012. 992 /* epilogue start */
  1013. 993 004a DF91 pop r29
  1014. 994 004c CF91 pop r28
  1015. 995 004e 0895 ret
  1016. 996 .size CANBufferPut, .-CANBufferPut
  1017. 997 .section .text.CANBufferFree,"ax",@progbits
  1018. 998 .global CANBufferFree
  1019. 999 .type CANBufferFree, @function
  1020. 1000 CANBufferFree:
  1021. 1001 /* prologue: function */
  1022. 1002 /* frame size = 0 */
  1023. 1003 /* stack size = 0 */
  1024. 1004 .L__stack_usage = 0
  1025. 1005 0000 FC01 movw r30,r24
  1026. 1006 0002 8281 ldd r24,Z+2
  1027. 1007 0004 9381 ldd r25,Z+3
  1028. 1008 0006 2481 ldd r18,Z+4
  1029. 1009 0008 3581 ldd r19,Z+5
  1030. 1010 000a 821B sub r24,r18
  1031. 1011 000c 930B sbc r25,r19
  1032. 1012 000e 0895 ret
  1033. 1013 .size CANBufferFree, .-CANBufferFree
  1034. 1014 .section .text.SJATxFrame,"ax",@progbits
  1035. 1015 .global SJATxFrame
  1036. 1016 .type SJATxFrame, @function
  1037. 1017 SJATxFrame:
  1038. 1018 0000 CF93 push r28
  1039. 1019 0002 DF93 push r29
  1040. 1020 /* prologue: function */
  1041. 1021 /* frame size = 0 */
  1042. 1022 /* stack size = 2 */
  1043. 1023 .L__stack_usage = 2
  1044. 1024 0004 FC01 movw r30,r24
  1045. GAS LISTING /tmp/cczkoS7A.s page 19
  1046. 1025 0006 4585 ldd r20,Z+13
  1047. 1026 0008 8081 ld r24,Z
  1048. 1027 000a 9181 ldd r25,Z+1
  1049. 1028 000c A281 ldd r26,Z+2
  1050. 1029 000e B381 ldd r27,Z+3
  1051. 1030 0010 3481 ldd r19,Z+4
  1052. 1031 0012 2685 ldd r18,Z+14
  1053. 1032 0014 4423 tst r20
  1054. 1033 0016 01F4 brne .+2
  1055. 1034 0018 00C0 rjmp .L87
  1056. 1035 001a C3E0 ldi r28,3
  1057. 1036 1:
  1058. 1037 001c 880F lsl r24
  1059. 1038 001e 991F rol r25
  1060. 1039 0020 AA1F rol r26
  1061. 1040 0022 BB1F rol r27
  1062. 1041 0024 CA95 dec r28
  1063. 1042 0026 01F4 brne 1b
  1064. 1043 0028 C091 0000 lds r28,sja_base
  1065. 1044 002c D091 0000 lds r29,sja_base+1
  1066. 1045 0030 2111 cpse r18,__zero_reg__
  1067. 1046 0032 20E4 ldi r18,lo8(64)
  1068. 1047 .L88:
  1069. 1048 0034 3068 ori r19,lo8(-128)
  1070. 1049 0036 232B or r18,r19
  1071. 1050 0038 288B std Y+16,r18
  1072. 1051 003a C091 0000 lds r28,sja_base
  1073. 1052 003e D091 0000 lds r29,sja_base+1
  1074. 1053 0042 4B2F mov r20,r27
  1075. 1054 0044 5527 clr r21
  1076. 1055 0046 6627 clr r22
  1077. 1056 0048 7727 clr r23
  1078. 1057 004a 498B std Y+17,r20
  1079. 1058 004c C091 0000 lds r28,sja_base
  1080. 1059 0050 D091 0000 lds r29,sja_base+1
  1081. 1060 0054 AD01 movw r20,r26
  1082. 1061 0056 6627 clr r22
  1083. 1062 0058 7727 clr r23
  1084. 1063 005a 4A8B std Y+18,r20
  1085. 1064 005c C091 0000 lds r28,sja_base
  1086. 1065 0060 D091 0000 lds r29,sja_base+1
  1087. 1066 0064 492F mov r20,r25
  1088. 1067 0066 5A2F mov r21,r26
  1089. 1068 0068 6B2F mov r22,r27
  1090. 1069 006a 7727 clr r23
  1091. 1070 006c 4B8B std Y+19,r20
  1092. 1071 006e C091 0000 lds r28,sja_base
  1093. 1072 0072 D091 0000 lds r29,sja_base+1
  1094. 1073 0076 887F andi r24,lo8(-8)
  1095. 1074 0078 8C8B std Y+20,r24
  1096. 1075 007a A091 0000 lds r26,sja_base
  1097. 1076 007e B091 0000 lds r27,sja_base+1
  1098. 1077 0082 8581 ldd r24,Z+5
  1099. 1078 0084 5596 adiw r26,21
  1100. 1079 0086 8C93 st X,r24
  1101. 1080 0088 A091 0000 lds r26,sja_base
  1102. 1081 008c B091 0000 lds r27,sja_base+1
  1103. GAS LISTING /tmp/cczkoS7A.s page 20
  1104. 1082 0090 8681 ldd r24,Z+6
  1105. 1083 0092 5696 adiw r26,22
  1106. 1084 0094 8C93 st X,r24
  1107. 1085 0096 A091 0000 lds r26,sja_base
  1108. 1086 009a B091 0000 lds r27,sja_base+1
  1109. 1087 009e 8781 ldd r24,Z+7
  1110. 1088 00a0 5796 adiw r26,23
  1111. 1089 00a2 8C93 st X,r24
  1112. 1090 00a4 A091 0000 lds r26,sja_base
  1113. 1091 00a8 B091 0000 lds r27,sja_base+1
  1114. 1092 00ac 8085 ldd r24,Z+8
  1115. 1093 00ae 5896 adiw r26,24
  1116. 1094 00b0 8C93 st X,r24
  1117. 1095 00b2 A091 0000 lds r26,sja_base
  1118. 1096 00b6 B091 0000 lds r27,sja_base+1
  1119. 1097 00ba 8185 ldd r24,Z+9
  1120. 1098 00bc 5996 adiw r26,25
  1121. 1099 00be 8C93 st X,r24
  1122. 1100 00c0 A091 0000 lds r26,sja_base
  1123. 1101 00c4 B091 0000 lds r27,sja_base+1
  1124. 1102 00c8 8285 ldd r24,Z+10
  1125. 1103 00ca 5A96 adiw r26,26
  1126. 1104 00cc 8C93 st X,r24
  1127. 1105 00ce A091 0000 lds r26,sja_base
  1128. 1106 00d2 B091 0000 lds r27,sja_base+1
  1129. 1107 00d6 8385 ldd r24,Z+11
  1130. 1108 00d8 5B96 adiw r26,27
  1131. 1109 00da 8C93 st X,r24
  1132. 1110 00dc A091 0000 lds r26,sja_base
  1133. 1111 00e0 B091 0000 lds r27,sja_base+1
  1134. 1112 00e4 8485 ldd r24,Z+12
  1135. 1113 00e6 5C96 adiw r26,28
  1136. 1114 00e8 8C93 st X,r24
  1137. 1115 00ea 00C0 rjmp .L89
  1138. 1116 .L87:
  1139. 1117 00ec 45E1 ldi r20,21
  1140. 1118 1:
  1141. 1119 00ee 880F lsl r24
  1142. 1120 00f0 991F rol r25
  1143. 1121 00f2 AA1F rol r26
  1144. 1122 00f4 BB1F rol r27
  1145. 1123 00f6 4A95 dec r20
  1146. 1124 00f8 01F4 brne 1b
  1147. 1125 00fa C091 0000 lds r28,sja_base
  1148. 1126 00fe D091 0000 lds r29,sja_base+1
  1149. 1127 0102 2111 cpse r18,__zero_reg__
  1150. 1128 0104 20E4 ldi r18,lo8(64)
  1151. 1129 .L90:
  1152. 1130 0106 322B or r19,r18
  1153. 1131 0108 388B std Y+16,r19
  1154. 1132 010a C091 0000 lds r28,sja_base
  1155. 1133 010e D091 0000 lds r29,sja_base+1
  1156. 1134 0112 4B2F mov r20,r27
  1157. 1135 0114 5527 clr r21
  1158. 1136 0116 6627 clr r22
  1159. 1137 0118 7727 clr r23
  1160. 1138 011a 498B std Y+17,r20
  1161. GAS LISTING /tmp/cczkoS7A.s page 21
  1162. 1139 011c C091 0000 lds r28,sja_base
  1163. 1140 0120 D091 0000 lds r29,sja_base+1
  1164. 1141 0124 8A2F mov r24,r26
  1165. 1142 0126 807E andi r24,lo8(-32)
  1166. 1143 0128 8A8B std Y+18,r24
  1167. 1144 012a A091 0000 lds r26,sja_base
  1168. 1145 012e B091 0000 lds r27,sja_base+1
  1169. 1146 0132 8581 ldd r24,Z+5
  1170. 1147 0134 5396 adiw r26,19
  1171. 1148 0136 8C93 st X,r24
  1172. 1149 0138 A091 0000 lds r26,sja_base
  1173. 1150 013c B091 0000 lds r27,sja_base+1
  1174. 1151 0140 8681 ldd r24,Z+6
  1175. 1152 0142 5496 adiw r26,20
  1176. 1153 0144 8C93 st X,r24
  1177. 1154 0146 A091 0000 lds r26,sja_base
  1178. 1155 014a B091 0000 lds r27,sja_base+1
  1179. 1156 014e 8781 ldd r24,Z+7
  1180. 1157 0150 5596 adiw r26,21
  1181. 1158 0152 8C93 st X,r24
  1182. 1159 0154 A091 0000 lds r26,sja_base
  1183. 1160 0158 B091 0000 lds r27,sja_base+1
  1184. 1161 015c 8085 ldd r24,Z+8
  1185. 1162 015e 5696 adiw r26,22
  1186. 1163 0160 8C93 st X,r24
  1187. 1164 0162 A091 0000 lds r26,sja_base
  1188. 1165 0166 B091 0000 lds r27,sja_base+1
  1189. 1166 016a 8185 ldd r24,Z+9
  1190. 1167 016c 5796 adiw r26,23
  1191. 1168 016e 8C93 st X,r24
  1192. 1169 0170 A091 0000 lds r26,sja_base
  1193. 1170 0174 B091 0000 lds r27,sja_base+1
  1194. 1171 0178 8285 ldd r24,Z+10
  1195. 1172 017a 5896 adiw r26,24
  1196. 1173 017c 8C93 st X,r24
  1197. 1174 017e A091 0000 lds r26,sja_base
  1198. 1175 0182 B091 0000 lds r27,sja_base+1
  1199. 1176 0186 8385 ldd r24,Z+11
  1200. 1177 0188 5996 adiw r26,25
  1201. 1178 018a 8C93 st X,r24
  1202. 1179 018c A091 0000 lds r26,sja_base
  1203. 1180 0190 B091 0000 lds r27,sja_base+1
  1204. 1181 0194 8485 ldd r24,Z+12
  1205. 1182 0196 5A96 adiw r26,26
  1206. 1183 0198 8C93 st X,r24
  1207. 1184 .L89:
  1208. 1185 019a E091 0000 lds r30,sja_base
  1209. 1186 019e F091 0000 lds r31,sja_base+1
  1210. 1187 01a2 81E0 ldi r24,lo8(1)
  1211. 1188 01a4 8183 std Z+1,r24
  1212. 1189 /* epilogue start */
  1213. 1190 01a6 DF91 pop r29
  1214. 1191 01a8 CF91 pop r28
  1215. 1192 01aa 0895 ret
  1216. 1193 .size SJATxFrame, .-SJATxFrame
  1217. 1194 .section .text.CAN_Tx,"ax",@progbits
  1218. 1195 .global CAN_Tx
  1219. GAS LISTING /tmp/cczkoS7A.s page 22
  1220. 1196 .type CAN_Tx, @function
  1221. 1197 CAN_Tx:
  1222. 1198 0000 CF93 push r28
  1223. 1199 0002 DF93 push r29
  1224. 1200 0004 CDB7 in r28,__SP_L__
  1225. 1201 0006 DEB7 in r29,__SP_H__
  1226. 1202 0008 6E97 sbiw r28,30
  1227. 1203 000a 0FB6 in __tmp_reg__,__SREG__
  1228. 1204 000c F894 cli
  1229. 1205 000e DEBF out __SP_H__,r29
  1230. 1206 0010 0FBE out __SREG__,__tmp_reg__
  1231. 1207 0012 CDBF out __SP_L__,r28
  1232. 1208 /* prologue: function */
  1233. 1209 /* frame size = 30 */
  1234. 1210 /* stack size = 32 */
  1235. 1211 .L__stack_usage = 32
  1236. 1212 0014 FC01 movw r30,r24
  1237. 1213 0016 0189 ldd r16,Z+17
  1238. 1214 0018 1289 ldd r17,Z+18
  1239. 1215 001a 80E1 ldi r24,lo8(16)
  1240. 1216 001c 0E94 0000 call NutThreadSetPriority
  1241. 1217 0020 7801 movw r14,r16
  1242. 1218 0022 F2E0 ldi r31,2
  1243. 1219 0024 EF0E add r14,r31
  1244. 1220 0026 F11C adc r15,__zero_reg__
  1245. 1221 .L96:
  1246. 1222 0028 40E0 ldi r20,0
  1247. 1223 002a 50E0 ldi r21,0
  1248. 1224 002c BA01 movw r22,r20
  1249. 1225 002e C701 movw r24,r14
  1250. 1226 0030 0E94 0000 call NutEventWait
  1251. 1227 .L94:
  1252. 1228 0034 E091 0000 lds r30,sja_base
  1253. 1229 0038 F091 0000 lds r31,sja_base+1
  1254. 1230 003c 8281 ldd r24,Z+2
  1255. 1231 003e 82FF sbrs r24,2
  1256. 1232 0040 00C0 rjmp .L96
  1257. 1233 0042 60E0 ldi r22,lo8(CAN_TX_BUF)
  1258. 1234 0044 70E0 ldi r23,hi8(CAN_TX_BUF)
  1259. 1235 0046 CE01 movw r24,r28
  1260. 1236 0048 4096 adiw r24,16
  1261. 1237 004a 0E94 0000 call CANBufferGetMutex
  1262. 1238 004e 8FE0 ldi r24,lo8(15)
  1263. 1239 0050 FE01 movw r30,r28
  1264. 1240 0052 7096 adiw r30,16
  1265. 1241 0054 DE01 movw r26,r28
  1266. 1242 0056 1196 adiw r26,1
  1267. 1243 0:
  1268. 1244 0058 0190 ld r0,Z+
  1269. 1245 005a 0D92 st X+,r0
  1270. 1246 005c 8A95 dec r24
  1271. 1247 005e 01F4 brne 0b
  1272. 1248 0060 CE01 movw r24,r28
  1273. 1249 0062 0196 adiw r24,1
  1274. 1250 0064 0E94 0000 call SJATxFrame
  1275. 1251 0068 F801 movw r30,r16
  1276. 1252 006a 8085 ldd r24,Z+8
  1277. GAS LISTING /tmp/cczkoS7A.s page 23
  1278. 1253 006c 9185 ldd r25,Z+9
  1279. 1254 006e A285 ldd r26,Z+10
  1280. 1255 0070 B385 ldd r27,Z+11
  1281. 1256 0072 0196 adiw r24,1
  1282. 1257 0074 A11D adc r26,__zero_reg__
  1283. 1258 0076 B11D adc r27,__zero_reg__
  1284. 1259 0078 8087 std Z+8,r24
  1285. 1260 007a 9187 std Z+9,r25
  1286. 1261 007c A287 std Z+10,r26
  1287. 1262 007e B387 std Z+11,r27
  1288. 1263 0080 00C0 rjmp .L94
  1289. 1264 .size CAN_Tx, .-CAN_Tx
  1290. 1265 .section .text.SJARxFrame,"ax",@progbits
  1291. 1266 .global SJARxFrame
  1292. 1267 .type SJARxFrame, @function
  1293. 1268 SJARxFrame:
  1294. 1269 /* prologue: function */
  1295. 1270 /* frame size = 0 */
  1296. 1271 /* stack size = 0 */
  1297. 1272 .L__stack_usage = 0
  1298. 1273 0000 FC01 movw r30,r24
  1299. 1274 0002 A091 0000 lds r26,sja_base
  1300. 1275 0006 B091 0000 lds r27,sja_base+1
  1301. 1276 000a 5096 adiw r26,16
  1302. 1277 000c 8C91 ld r24,X
  1303. 1278 000e 982F mov r25,r24
  1304. 1279 0010 9F70 andi r25,lo8(15)
  1305. 1280 0012 9483 std Z+4,r25
  1306. 1281 0014 982F mov r25,r24
  1307. 1282 0016 991F rol r25
  1308. 1283 0018 9927 clr r25
  1309. 1284 001a 991F rol r25
  1310. 1285 001c 9587 std Z+13,r25
  1311. 1286 001e 86FB bst r24,6
  1312. 1287 0020 9927 clr r25
  1313. 1288 0022 90F9 bld r25,0
  1314. 1289 0024 9687 std Z+14,r25
  1315. 1290 0026 A091 0000 lds r26,sja_base
  1316. 1291 002a B091 0000 lds r27,sja_base+1
  1317. 1292 002e 87FF sbrs r24,7
  1318. 1293 0030 00C0 rjmp .L98
  1319. 1294 0032 5196 adiw r26,17
  1320. 1295 0034 4C91 ld r20,X
  1321. 1296 0036 A091 0000 lds r26,sja_base
  1322. 1297 003a B091 0000 lds r27,sja_base+1
  1323. 1298 003e 5296 adiw r26,18
  1324. 1299 0040 8C91 ld r24,X
  1325. 1300 0042 A091 0000 lds r26,sja_base
  1326. 1301 0046 B091 0000 lds r27,sja_base+1
  1327. 1302 004a 5396 adiw r26,19
  1328. 1303 004c 3C91 ld r19,X
  1329. 1304 004e A091 0000 lds r26,sja_base
  1330. 1305 0052 B091 0000 lds r27,sja_base+1
  1331. 1306 0056 5496 adiw r26,20
  1332. 1307 0058 2C91 ld r18,X
  1333. 1308 005a 90E0 ldi r25,0
  1334. 1309 005c A0E0 ldi r26,0
  1335. GAS LISTING /tmp/cczkoS7A.s page 24
  1336. 1310 005e B0E0 ldi r27,0
  1337. 1311 0060 DC01 movw r26,r24
  1338. 1312 0062 9927 clr r25
  1339. 1313 0064 8827 clr r24
  1340. 1314 0066 B42B or r27,r20
  1341. 1315 0068 932B or r25,r19
  1342. 1316 006a 287F andi r18,lo8(-8)
  1343. 1317 006c 822B or r24,r18
  1344. 1318 006e 63E0 ldi r22,3
  1345. 1319 1:
  1346. 1320 0070 B695 lsr r27
  1347. 1321 0072 A795 ror r26
  1348. 1322 0074 9795 ror r25
  1349. 1323 0076 8795 ror r24
  1350. 1324 0078 6A95 dec r22
  1351. 1325 007a 01F4 brne 1b
  1352. 1326 007c 8083 st Z,r24
  1353. 1327 007e 9183 std Z+1,r25
  1354. 1328 0080 A283 std Z+2,r26
  1355. 1329 0082 B383 std Z+3,r27
  1356. 1330 0084 A091 0000 lds r26,sja_base
  1357. 1331 0088 B091 0000 lds r27,sja_base+1
  1358. 1332 008c 5596 adiw r26,21
  1359. 1333 008e 8C91 ld r24,X
  1360. 1334 0090 8583 std Z+5,r24
  1361. 1335 0092 A091 0000 lds r26,sja_base
  1362. 1336 0096 B091 0000 lds r27,sja_base+1
  1363. 1337 009a 5696 adiw r26,22
  1364. 1338 009c 8C91 ld r24,X
  1365. 1339 009e 8683 std Z+6,r24
  1366. 1340 00a0 A091 0000 lds r26,sja_base
  1367. 1341 00a4 B091 0000 lds r27,sja_base+1
  1368. 1342 00a8 5796 adiw r26,23
  1369. 1343 00aa 8C91 ld r24,X
  1370. 1344 00ac 8783 std Z+7,r24
  1371. 1345 00ae A091 0000 lds r26,sja_base
  1372. 1346 00b2 B091 0000 lds r27,sja_base+1
  1373. 1347 00b6 5896 adiw r26,24
  1374. 1348 00b8 8C91 ld r24,X
  1375. 1349 00ba 8087 std Z+8,r24
  1376. 1350 00bc A091 0000 lds r26,sja_base
  1377. 1351 00c0 B091 0000 lds r27,sja_base+1
  1378. 1352 00c4 5996 adiw r26,25
  1379. 1353 00c6 8C91 ld r24,X
  1380. 1354 00c8 8187 std Z+9,r24
  1381. 1355 00ca A091 0000 lds r26,sja_base
  1382. 1356 00ce B091 0000 lds r27,sja_base+1
  1383. 1357 00d2 5A96 adiw r26,26
  1384. 1358 00d4 8C91 ld r24,X
  1385. 1359 00d6 8287 std Z+10,r24
  1386. 1360 00d8 A091 0000 lds r26,sja_base
  1387. 1361 00dc B091 0000 lds r27,sja_base+1
  1388. 1362 00e0 5B96 adiw r26,27
  1389. 1363 00e2 8C91 ld r24,X
  1390. 1364 00e4 8387 std Z+11,r24
  1391. 1365 00e6 A091 0000 lds r26,sja_base
  1392. 1366 00ea B091 0000 lds r27,sja_base+1
  1393. GAS LISTING /tmp/cczkoS7A.s page 25
  1394. 1367 00ee 5C96 adiw r26,28
  1395. 1368 00f0 8C91 ld r24,X
  1396. 1369 00f2 00C0 rjmp .L100
  1397. 1370 .L98:
  1398. 1371 00f4 5196 adiw r26,17
  1399. 1372 00f6 2C91 ld r18,X
  1400. 1373 00f8 A091 0000 lds r26,sja_base
  1401. 1374 00fc B091 0000 lds r27,sja_base+1
  1402. 1375 0100 5296 adiw r26,18
  1403. 1376 0102 8C91 ld r24,X
  1404. 1377 0104 90E0 ldi r25,0
  1405. 1378 0106 A0E0 ldi r26,0
  1406. 1379 0108 B0E0 ldi r27,0
  1407. 1380 010a DC01 movw r26,r24
  1408. 1381 010c 9927 clr r25
  1409. 1382 010e 8827 clr r24
  1410. 1383 0110 B22B or r27,r18
  1411. 1384 0112 45E1 ldi r20,21
  1412. 1385 1:
  1413. 1386 0114 B695 lsr r27
  1414. 1387 0116 A795 ror r26
  1415. 1388 0118 9795 ror r25
  1416. 1389 011a 8795 ror r24
  1417. 1390 011c 4A95 dec r20
  1418. 1391 011e 01F4 brne 1b
  1419. 1392 0120 8083 st Z,r24
  1420. 1393 0122 9183 std Z+1,r25
  1421. 1394 0124 A283 std Z+2,r26
  1422. 1395 0126 B383 std Z+3,r27
  1423. 1396 0128 A091 0000 lds r26,sja_base
  1424. 1397 012c B091 0000 lds r27,sja_base+1
  1425. 1398 0130 5396 adiw r26,19
  1426. 1399 0132 8C91 ld r24,X
  1427. 1400 0134 8583 std Z+5,r24
  1428. 1401 0136 A091 0000 lds r26,sja_base
  1429. 1402 013a B091 0000 lds r27,sja_base+1
  1430. 1403 013e 5496 adiw r26,20
  1431. 1404 0140 8C91 ld r24,X
  1432. 1405 0142 8683 std Z+6,r24
  1433. 1406 0144 A091 0000 lds r26,sja_base
  1434. 1407 0148 B091 0000 lds r27,sja_base+1
  1435. 1408 014c 5596 adiw r26,21
  1436. 1409 014e 8C91 ld r24,X
  1437. 1410 0150 8783 std Z+7,r24
  1438. 1411 0152 A091 0000 lds r26,sja_base
  1439. 1412 0156 B091 0000 lds r27,sja_base+1
  1440. 1413 015a 5696 adiw r26,22
  1441. 1414 015c 8C91 ld r24,X
  1442. 1415 015e 8087 std Z+8,r24
  1443. 1416 0160 A091 0000 lds r26,sja_base
  1444. 1417 0164 B091 0000 lds r27,sja_base+1
  1445. 1418 0168 5796 adiw r26,23
  1446. 1419 016a 8C91 ld r24,X
  1447. 1420 016c 8187 std Z+9,r24
  1448. 1421 016e A091 0000 lds r26,sja_base
  1449. 1422 0172 B091 0000 lds r27,sja_base+1
  1450. 1423 0176 5896 adiw r26,24
  1451. GAS LISTING /tmp/cczkoS7A.s page 26
  1452. 1424 0178 8C91 ld r24,X
  1453. 1425 017a 8287 std Z+10,r24
  1454. 1426 017c A091 0000 lds r26,sja_base
  1455. 1427 0180 B091 0000 lds r27,sja_base+1
  1456. 1428 0184 5996 adiw r26,25
  1457. 1429 0186 8C91 ld r24,X
  1458. 1430 0188 8387 std Z+11,r24
  1459. 1431 018a A091 0000 lds r26,sja_base
  1460. 1432 018e B091 0000 lds r27,sja_base+1
  1461. 1433 0192 5A96 adiw r26,26
  1462. 1434 0194 8C91 ld r24,X
  1463. 1435 .L100:
  1464. 1436 0196 8487 std Z+12,r24
  1465. 1437 0198 E091 0000 lds r30,sja_base
  1466. 1438 019c F091 0000 lds r31,sja_base+1
  1467. 1439 01a0 84E0 ldi r24,lo8(4)
  1468. 1440 01a2 8183 std Z+1,r24
  1469. 1441 01a4 0895 ret
  1470. 1442 .size SJARxFrame, .-SJARxFrame
  1471. 1443 .section .text.SJAInterrupt,"ax",@progbits
  1472. 1444 .type SJAInterrupt, @function
  1473. 1445 SJAInterrupt:
  1474. 1446 0000 0F93 push r16
  1475. 1447 0002 1F93 push r17
  1476. 1448 0004 CF93 push r28
  1477. 1449 0006 DF93 push r29
  1478. 1450 0008 CDB7 in r28,__SP_L__
  1479. 1451 000a DEB7 in r29,__SP_H__
  1480. 1452 000c 6097 sbiw r28,16
  1481. 1453 000e 0FB6 in __tmp_reg__,__SREG__
  1482. 1454 0010 F894 cli
  1483. 1455 0012 DEBF out __SP_H__,r29
  1484. 1456 0014 0FBE out __SREG__,__tmp_reg__
  1485. 1457 0016 CDBF out __SP_L__,r28
  1486. 1458 /* prologue: function */
  1487. 1459 /* frame size = 16 */
  1488. 1460 /* stack size = 20 */
  1489. 1461 .L__stack_usage = 20
  1490. 1462 0018 E091 0000 lds r30,sja_base
  1491. 1463 001c F091 0000 lds r31,sja_base+1
  1492. 1464 0020 2381 ldd r18,Z+3
  1493. 1465 0022 288B std Y+16,r18
  1494. 1466 0024 DC01 movw r26,r24
  1495. 1467 0026 5196 adiw r26,17
  1496. 1468 0028 0D91 ld r16,X+
  1497. 1469 002a 1C91 ld r17,X
  1498. 1470 002c 5297 sbiw r26,17+1
  1499. 1471 002e F801 movw r30,r16
  1500. 1472 0030 8485 ldd r24,Z+12
  1501. 1473 0032 9585 ldd r25,Z+13
  1502. 1474 0034 A685 ldd r26,Z+14
  1503. 1475 0036 B785 ldd r27,Z+15
  1504. 1476 0038 0196 adiw r24,1
  1505. 1477 003a A11D adc r26,__zero_reg__
  1506. 1478 003c B11D adc r27,__zero_reg__
  1507. 1479 003e 8487 std Z+12,r24
  1508. 1480 0040 9587 std Z+13,r25
  1509. GAS LISTING /tmp/cczkoS7A.s page 27
  1510. 1481 0042 A687 std Z+14,r26
  1511. 1482 0044 B787 std Z+15,r27
  1512. 1483 0046 8889 ldd r24,Y+16
  1513. 1484 0048 81FF sbrs r24,1
  1514. 1485 004a 00C0 rjmp .L102
  1515. 1486 004c 8281 ldd r24,Z+2
  1516. 1487 004e 9381 ldd r25,Z+3
  1517. 1488 0050 892B or r24,r25
  1518. 1489 0052 01F4 brne .L103
  1519. 1490 0054 8FEF ldi r24,lo8(-1)
  1520. 1491 0056 9FEF ldi r25,lo8(-1)
  1521. 1492 0058 9383 std Z+3,r25
  1522. 1493 005a 8283 std Z+2,r24
  1523. 1494 005c 00C0 rjmp .L102
  1524. 1495 .L103:
  1525. 1496 005e 8281 ldd r24,Z+2
  1526. 1497 0060 9381 ldd r25,Z+3
  1527. 1498 0062 0196 adiw r24,1
  1528. 1499 0064 01F0 breq .L102
  1529. 1500 0066 0280 ldd __tmp_reg__,Z+2
  1530. 1501 0068 F381 ldd r31,Z+3
  1531. 1502 006a E02D mov r30,__tmp_reg__
  1532. 1503 006c 8481 ldd r24,Z+4
  1533. 1504 006e 9581 ldd r25,Z+5
  1534. 1505 0070 0196 adiw r24,1
  1535. 1506 0072 9583 std Z+5,r25
  1536. 1507 0074 8483 std Z+4,r24
  1537. 1508 .L102:
  1538. 1509 0076 8889 ldd r24,Y+16
  1539. 1510 0078 80FF sbrs r24,0
  1540. 1511 007a 00C0 rjmp .L104
  1541. 1512 007c 2091 0000 lds r18,CAN_RX_BUF+2
  1542. 1513 0080 3091 0000 lds r19,CAN_RX_BUF+2+1
  1543. 1514 0084 8091 0000 lds r24,CAN_RX_BUF+4
  1544. 1515 0088 9091 0000 lds r25,CAN_RX_BUF+4+1
  1545. 1516 008c 2817 cp r18,r24
  1546. 1517 008e 3907 cpc r19,r25
  1547. 1518 0090 01F4 brne .+2
  1548. 1519 0092 00C0 rjmp .L104
  1549. 1520 0094 CE01 movw r24,r28
  1550. 1521 0096 0196 adiw r24,1
  1551. 1522 0098 0E94 0000 call SJARxFrame
  1552. 1523 009c BE01 movw r22,r28
  1553. 1524 009e 6F5F subi r22,-1
  1554. 1525 00a0 7F4F sbci r23,-1
  1555. 1526 00a2 80E0 ldi r24,lo8(CAN_RX_BUF)
  1556. 1527 00a4 90E0 ldi r25,hi8(CAN_RX_BUF)
  1557. 1528 00a6 0E94 0000 call CANBufferPut
  1558. 1529 00aa 2091 0000 lds r18,CAN_RX_BUF+2
  1559. 1530 00ae 3091 0000 lds r19,CAN_RX_BUF+2+1
  1560. 1531 00b2 8091 0000 lds r24,CAN_RX_BUF+4
  1561. 1532 00b6 9091 0000 lds r25,CAN_RX_BUF+4+1
  1562. 1533 00ba 2817 cp r18,r24
  1563. 1534 00bc 3907 cpc r19,r25
  1564. 1535 00be 01F4 brne .L105
  1565. 1536 00c0 E091 0000 lds r30,sja_base
  1566. 1537 00c4 F091 0000 lds r31,sja_base+1
  1567. GAS LISTING /tmp/cczkoS7A.s page 28
  1568. 1538 00c8 8481 ldd r24,Z+4
  1569. 1539 00ca 8E7F andi r24,lo8(-2)
  1570. 1540 00cc 8483 std Z+4,r24
  1571. 1541 .L105:
  1572. 1542 00ce F801 movw r30,r16
  1573. 1543 00d0 8081 ld r24,Z
  1574. 1544 00d2 9181 ldd r25,Z+1
  1575. 1545 00d4 892B or r24,r25
  1576. 1546 00d6 01F4 brne .L106
  1577. 1547 00d8 8FEF ldi r24,lo8(-1)
  1578. 1548 00da 9FEF ldi r25,lo8(-1)
  1579. 1549 00dc 9183 std Z+1,r25
  1580. 1550 00de 8083 st Z,r24
  1581. 1551 00e0 00C0 rjmp .L107
  1582. 1552 .L106:
  1583. 1553 00e2 8081 ld r24,Z
  1584. 1554 00e4 9181 ldd r25,Z+1
  1585. 1555 00e6 0196 adiw r24,1
  1586. 1556 00e8 01F0 breq .L107
  1587. 1557 00ea 0190 ld __tmp_reg__,Z+
  1588. 1558 00ec F081 ld r31,Z
  1589. 1559 00ee E02D mov r30,__tmp_reg__
  1590. 1560 00f0 8481 ldd r24,Z+4
  1591. 1561 00f2 9581 ldd r25,Z+5
  1592. 1562 00f4 0196 adiw r24,1
  1593. 1563 00f6 9583 std Z+5,r25
  1594. 1564 00f8 8483 std Z+4,r24
  1595. 1565 .L107:
  1596. 1566 00fa F801 movw r30,r16
  1597. 1567 00fc 8481 ldd r24,Z+4
  1598. 1568 00fe 9581 ldd r25,Z+5
  1599. 1569 0100 A681 ldd r26,Z+6
  1600. 1570 0102 B781 ldd r27,Z+7
  1601. 1571 0104 0196 adiw r24,1
  1602. 1572 0106 A11D adc r26,__zero_reg__
  1603. 1573 0108 B11D adc r27,__zero_reg__
  1604. 1574 010a 8483 std Z+4,r24
  1605. 1575 010c 9583 std Z+5,r25
  1606. 1576 010e A683 std Z+6,r26
  1607. 1577 0110 B783 std Z+7,r27
  1608. 1578 .L104:
  1609. 1579 0112 8889 ldd r24,Y+16
  1610. 1580 0114 82FF sbrs r24,2
  1611. 1581 0116 00C0 rjmp .L108
  1612. 1582 0118 F801 movw r30,r16
  1613. 1583 011a 8489 ldd r24,Z+20
  1614. 1584 011c 9589 ldd r25,Z+21
  1615. 1585 011e A689 ldd r26,Z+22
  1616. 1586 0120 B789 ldd r27,Z+23
  1617. 1587 0122 0196 adiw r24,1
  1618. 1588 0124 A11D adc r26,__zero_reg__
  1619. 1589 0126 B11D adc r27,__zero_reg__
  1620. 1590 0128 848B std Z+20,r24
  1621. 1591 012a 958B std Z+21,r25
  1622. 1592 012c A68B std Z+22,r26
  1623. 1593 012e B78B std Z+23,r27
  1624. 1594 0130 00C0 rjmp .L101
  1625. GAS LISTING /tmp/cczkoS7A.s page 29
  1626. 1595 .L108:
  1627. 1596 0132 8889 ldd r24,Y+16
  1628. 1597 0134 83FF sbrs r24,3
  1629. 1598 0136 00C0 rjmp .L101
  1630. 1599 0138 F801 movw r30,r16
  1631. 1600 013a 8089 ldd r24,Z+16
  1632. 1601 013c 9189 ldd r25,Z+17
  1633. 1602 013e A289 ldd r26,Z+18
  1634. 1603 0140 B389 ldd r27,Z+19
  1635. 1604 0142 0196 adiw r24,1
  1636. 1605 0144 A11D adc r26,__zero_reg__
  1637. 1606 0146 B11D adc r27,__zero_reg__
  1638. 1607 0148 808B std Z+16,r24
  1639. 1608 014a 918B std Z+17,r25
  1640. 1609 014c A28B std Z+18,r26
  1641. 1610 014e B38B std Z+19,r27
  1642. 1611 0150 E091 0000 lds r30,sja_base
  1643. 1612 0154 F091 0000 lds r31,sja_base+1
  1644. 1613 0158 88E0 ldi r24,lo8(8)
  1645. 1614 015a 8183 std Z+1,r24
  1646. 1615 .L101:
  1647. 1616 /* epilogue start */
  1648. 1617 015c 6096 adiw r28,16
  1649. 1618 015e 0FB6 in __tmp_reg__,__SREG__
  1650. 1619 0160 F894 cli
  1651. 1620 0162 DEBF out __SP_H__,r29
  1652. 1621 0164 0FBE out __SREG__,__tmp_reg__
  1653. 1622 0166 CDBF out __SP_L__,r28
  1654. 1623 0168 DF91 pop r29
  1655. 1624 016a CF91 pop r28
  1656. 1625 016c 1F91 pop r17
  1657. 1626 016e 0F91 pop r16
  1658. 1627 0170 0895 ret
  1659. 1628 .size SJAInterrupt, .-SJAInterrupt
  1660. 1629 .global devSJA1000
  1661. 1630 .data
  1662. 1631 .type devSJA1000, @object
  1663. 1632 .size devSJA1000, 37
  1664. 1633 devSJA1000:
  1665. 1634 0000 0000 .word 0
  1666. 1635 0002 73 .byte 115
  1667. 1636 0003 6A .byte 106
  1668. 1637 0004 61 .byte 97
  1669. 1638 0005 31 .byte 49
  1670. 1639 0006 30 .byte 48
  1671. 1640 0007 30 .byte 48
  1672. 1641 0008 30 .byte 48
  1673. 1642 0009 00 .byte 0
  1674. 1643 000a 00 .byte 0
  1675. 1644 000b 06 .byte 6
  1676. 1645 000c 0000 .word 0
  1677. 1646 000e 00 .byte 0
  1678. 1647 000f 0000 .word ifc_sja1000
  1679. 1648 0011 0000 .word dcb_sja1000
  1680. 1649 0013 0000 .word gs(SJAInit)
  1681. 1650 0015 0000 .word 0
  1682. 1651 0017 0000 .word 0
  1683. GAS LISTING /tmp/cczkoS7A.s page 30
  1684. 1652 0019 0000 .word 0
  1685. 1653 001b 0000 .word 0
  1686. 1654 001d 0000 .word 0
  1687. 1655 001f 0000 .word 0
  1688. 1656 0021 0000 .word 0
  1689. 1657 0023 0000 .word 0
  1690. 1658 .global ifc_sja1000
  1691. 1659 .type ifc_sja1000, @object
  1692. 1660 .size ifc_sja1000, 31
  1693. 1661 ifc_sja1000:
  1694. 1662 0025 02 .byte 2
  1695. 1663 0026 06 .byte 6
  1696. 1664 0027 00 .byte 0
  1697. 1665 0028 00 .byte 0
  1698. 1666 0029 00 .byte 0
  1699. 1667 002a FF .byte -1
  1700. 1668 002b FF .byte -1
  1701. 1669 002c FF .byte -1
  1702. 1670 002d FF .byte -1
  1703. 1671 002e 00 .byte 0
  1704. 1672 002f 00 .byte 0
  1705. 1673 0030 00 .byte 0
  1706. 1674 0031 00 .byte 0
  1707. 1675 0032 00 .byte 0
  1708. 1676 0033 00 .byte 0
  1709. 1677 0034 00 .byte 0
  1710. 1678 0035 00 .byte 0
  1711. 1679 0036 0000 .word gs(SJARxAvail)
  1712. 1680 0038 0000 .word gs(SJATxFree)
  1713. 1681 003a 0000 .word gs(SJAInput)
  1714. 1682 003c 0000 .word gs(SJAOutput)
  1715. 1683 003e 0000 .word gs(SJASetAccCode)
  1716. 1684 0040 0000 .word gs(SJASetAccMask)
  1717. 1685 0042 0000 .word gs(SJASetBaudrate)
  1718. 1686 .comm CAN_TX_BUF,16,1
  1719. 1687 .comm CAN_RX_BUF,16,1
  1720. 1688 .global sja_base
  1721. 1689 .section .bss
  1722. 1690 .type sja_base, @object
  1723. 1691 .size sja_base, 2
  1724. 1692 sja_base:
  1725. 1693 0000 0000 .zero 2
  1726. 1694 .comm dcb_sja1000,24,1
  1727. 1695 .ident "GCC: (GNU) 5.3.0"
  1728. 1696 .global __do_copy_data
  1729. 1697 .global __do_clear_bss
  1730. GAS LISTING /tmp/cczkoS7A.s page 31
  1731. DEFINED SYMBOLS
  1732. *ABS*:0000000000000000 sja1000.c
  1733. /tmp/cczkoS7A.s:2 *ABS*:000000000000003e __SP_H__
  1734. /tmp/cczkoS7A.s:3 *ABS*:000000000000003d __SP_L__
  1735. /tmp/cczkoS7A.s:4 *ABS*:000000000000003f __SREG__
  1736. /tmp/cczkoS7A.s:5 *ABS*:000000000000003b __RAMPZ__
  1737. /tmp/cczkoS7A.s:6 *ABS*:0000000000000000 __tmp_reg__
  1738. /tmp/cczkoS7A.s:7 *ABS*:0000000000000001 __zero_reg__
  1739. /tmp/cczkoS7A.s:11 .text.SJASetAccCode:0000000000000000 SJASetAccCode
  1740. /tmp/cczkoS7A.s:1692 .bss:0000000000000000 sja_base
  1741. /tmp/cczkoS7A.s:86 .text.SJASetAccMask:0000000000000000 SJASetAccMask
  1742. /tmp/cczkoS7A.s:161 .text.SJASetBaudrate:0000000000000000 SJASetBaudrate
  1743. /tmp/cczkoS7A.s:291 .text.CANBufferInit:0000000000000000 CANBufferInit
  1744. /tmp/cczkoS7A.s:341 .text.SJAInit:0000000000000000 SJAInit
  1745. *COM*:0000000000000010 CAN_RX_BUF
  1746. *COM*:0000000000000010 CAN_TX_BUF
  1747. /tmp/cczkoS7A.s:1445 .text.SJAInterrupt:0000000000000000 SJAInterrupt
  1748. /tmp/cczkoS7A.s:1197 .text.CAN_Tx:0000000000000000 CAN_Tx
  1749. /tmp/cczkoS7A.s:619 .text.CANBufferGetMutex:0000000000000000 CANBufferGetMutex
  1750. /tmp/cczkoS7A.s:687 .text.CANBufferPutMutex:0000000000000000 CANBufferPutMutex
  1751. /tmp/cczkoS7A.s:747 .text.SJAOutput:0000000000000000 SJAOutput
  1752. /tmp/cczkoS7A.s:770 .text.CANBufferGet:0000000000000000 CANBufferGet
  1753. /tmp/cczkoS7A.s:832 .text.SJAInput:0000000000000000 SJAInput
  1754. /tmp/cczkoS7A.s:949 .text.CANBufferPut:0000000000000000 CANBufferPut
  1755. /tmp/cczkoS7A.s:1000 .text.CANBufferFree:0000000000000000 CANBufferFree
  1756. /tmp/cczkoS7A.s:1017 .text.SJATxFrame:0000000000000000 SJATxFrame
  1757. /tmp/cczkoS7A.s:1268 .text.SJARxFrame:0000000000000000 SJARxFrame
  1758. /tmp/cczkoS7A.s:1633 .data:0000000000000000 devSJA1000
  1759. /tmp/cczkoS7A.s:1661 .data:0000000000000025 ifc_sja1000
  1760. *COM*:0000000000000018 dcb_sja1000
  1761. UNDEFINED SYMBOLS
  1762. __tablejump2__
  1763. NutSemInit
  1764. heapFreeList
  1765. NutHeapRootAlloc
  1766. sig_INTERRUPT7
  1767. NutRegisterIrqHandler
  1768. NutThreadCreate
  1769. NutSemWait
  1770. __udivmodhi4
  1771. NutSemPost
  1772. NutEventPostAsync
  1773. NutEventWait
  1774. NutThreadSetPriority
  1775. SJARxAvail
  1776. SJATxFree
  1777. __do_copy_data
  1778. __do_clear_bss