寄存器自动化测试说明及时使用
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

839 lines
27 KiB

  1. ;***************************************************************
  2. ;* TMS320C54x C/C++ Codegen PC v4.1.0 *
  3. ;* Date/Time created: Fri May 06 17:19:30 2016 *
  4. ;***************************************************************
  5. .compiler_opts --mem_model:code=far --mem_model:data=flat --quiet --silicon_version=548
  6. .mmregs
  7. FP .set AR7
  8. .c_mode
  9. DW$CU .dwtag DW_TAG_compile_unit
  10. .dwattr DW$CU, DW_AT_name("timer.c")
  11. .dwattr DW$CU, DW_AT_producer("TMS320C54x C/C++ Codegen PC v4.1.0 Copyright (c) 1996-2005 Texas Instruments Incorporated")
  12. .dwattr DW$CU, DW_AT_stmt_list(0x00)
  13. .dwattr DW$CU, DW_AT_TI_VERSION(0x01)
  14. ;**************************************************************
  15. ;* CINIT RECORDS *
  16. ;**************************************************************
  17. .sect ".cinit"
  18. .align 1
  19. .field IR_1,16
  20. .field _myTConfig+0,16
  21. .field 3104,16 ; _myTConfig._tcr @ 0
  22. .field 2048,16 ; _myTConfig._prd @ 16
  23. IR_1: .set 2
  24. .sect ".cinit"
  25. .align 1
  26. .field 1,16
  27. .field _timer_int_cnt+0,16
  28. .field 0,16 ; _timer_int_cnt @ 0
  29. DW$1 .dwtag DW_TAG_subprogram, DW_AT_name("IRQ_clear"), DW_AT_symbol_name("_IRQ_clear")
  30. .dwattr DW$1, DW_AT_declaration(0x01)
  31. .dwattr DW$1, DW_AT_external(0x01)
  32. DW$2 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  33. .dwendtag DW$1
  34. DW$3 .dwtag DW_TAG_subprogram, DW_AT_name("IRQ_enable"), DW_AT_symbol_name("_IRQ_enable")
  35. .dwattr DW$3, DW_AT_type(*DW$T$10)
  36. .dwattr DW$3, DW_AT_declaration(0x01)
  37. .dwattr DW$3, DW_AT_external(0x01)
  38. DW$4 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  39. .dwendtag DW$3
  40. DW$5 .dwtag DW_TAG_subprogram, DW_AT_name("IRQ_globalDisable"), DW_AT_symbol_name("_IRQ_globalDisable")
  41. .dwattr DW$5, DW_AT_type(*DW$T$10)
  42. .dwattr DW$5, DW_AT_declaration(0x01)
  43. .dwattr DW$5, DW_AT_external(0x01)
  44. DW$6 .dwtag DW_TAG_subprogram, DW_AT_name("IRQ_globalEnable"), DW_AT_symbol_name("_IRQ_globalEnable")
  45. .dwattr DW$6, DW_AT_type(*DW$T$10)
  46. .dwattr DW$6, DW_AT_declaration(0x01)
  47. .dwattr DW$6, DW_AT_external(0x01)
  48. DW$7 .dwtag DW_TAG_subprogram, DW_AT_name("IRQ_globalRestore"), DW_AT_symbol_name("_IRQ_globalRestore")
  49. .dwattr DW$7, DW_AT_declaration(0x01)
  50. .dwattr DW$7, DW_AT_external(0x01)
  51. DW$8 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
  52. .dwendtag DW$7
  53. DW$9 .dwtag DW_TAG_subprogram, DW_AT_name("IRQ_plug"), DW_AT_symbol_name("_IRQ_plug")
  54. .dwattr DW$9, DW_AT_declaration(0x01)
  55. .dwattr DW$9, DW_AT_external(0x01)
  56. DW$10 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  57. DW$11 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$28)
  58. .dwendtag DW$9
  59. DW$12 .dwtag DW_TAG_subprogram, DW_AT_name("CSL_init"), DW_AT_symbol_name("_CSL_init")
  60. .dwattr DW$12, DW_AT_declaration(0x01)
  61. .dwattr DW$12, DW_AT_external(0x01)
  62. DW$13 .dwtag DW_TAG_subprogram, DW_AT_name("TIMER_open"), DW_AT_symbol_name("_TIMER_open")
  63. .dwattr DW$13, DW_AT_type(*DW$T$32)
  64. .dwattr DW$13, DW_AT_declaration(0x01)
  65. .dwattr DW$13, DW_AT_external(0x01)
  66. DW$14 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
  67. DW$15 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  68. .dwendtag DW$13
  69. DW$16 .dwtag DW_TAG_subprogram, DW_AT_name("TIMER_close"), DW_AT_symbol_name("_TIMER_close")
  70. .dwattr DW$16, DW_AT_declaration(0x01)
  71. .dwattr DW$16, DW_AT_external(0x01)
  72. DW$17 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  73. .dwendtag DW$16
  74. DW$18 .dwtag DW_TAG_subprogram, DW_AT_name("TIMER_getEventId"), DW_AT_symbol_name("_TIMER_getEventId")
  75. .dwattr DW$18, DW_AT_type(*DW$T$19)
  76. .dwattr DW$18, DW_AT_declaration(0x01)
  77. .dwattr DW$18, DW_AT_external(0x01)
  78. DW$19 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  79. .dwendtag DW$18
  80. DW$20 .dwtag DW_TAG_subprogram, DW_AT_name("TIMER_start"), DW_AT_symbol_name("_TIMER_start")
  81. .dwattr DW$20, DW_AT_declaration(0x01)
  82. .dwattr DW$20, DW_AT_external(0x01)
  83. DW$21 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  84. .dwendtag DW$20
  85. DW$22 .dwtag DW_TAG_subprogram, DW_AT_name("TIMER_stop"), DW_AT_symbol_name("_TIMER_stop")
  86. .dwattr DW$22, DW_AT_declaration(0x01)
  87. .dwattr DW$22, DW_AT_external(0x01)
  88. DW$23 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  89. .dwendtag DW$22
  90. DW$24 .dwtag DW_TAG_subprogram, DW_AT_name("TIMER_config"), DW_AT_symbol_name("_TIMER_config")
  91. .dwattr DW$24, DW_AT_declaration(0x01)
  92. .dwattr DW$24, DW_AT_external(0x01)
  93. DW$25 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  94. DW$26 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$36)
  95. .dwendtag DW$24
  96. DW$27 .dwtag DW_TAG_subprogram, DW_AT_name("uart_puts"), DW_AT_symbol_name("_uart_puts")
  97. .dwattr DW$27, DW_AT_declaration(0x01)
  98. .dwattr DW$27, DW_AT_external(0x01)
  99. DW$28 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$41)
  100. .dwendtag DW$27
  101. .global _myTConfig
  102. .bss _myTConfig,2,0,0
  103. DW$29 .dwtag DW_TAG_variable, DW_AT_name("myTConfig"), DW_AT_symbol_name("_myTConfig")
  104. .dwattr DW$29, DW_AT_location[DW_OP_addr _myTConfig]
  105. .dwattr DW$29, DW_AT_type(*DW$T$35)
  106. .dwattr DW$29, DW_AT_external(0x01)
  107. .global _mhTimer
  108. .bss _mhTimer,1,0,0
  109. DW$30 .dwtag DW_TAG_variable, DW_AT_name("mhTimer"), DW_AT_symbol_name("_mhTimer")
  110. .dwattr DW$30, DW_AT_location[DW_OP_addr _mhTimer]
  111. .dwattr DW$30, DW_AT_type(*DW$T$32)
  112. .dwattr DW$30, DW_AT_external(0x01)
  113. .global _timer_int_cnt
  114. .bss _timer_int_cnt,1,0,0
  115. DW$31 .dwtag DW_TAG_variable, DW_AT_name("timer_int_cnt"), DW_AT_symbol_name("_timer_int_cnt")
  116. .dwattr DW$31, DW_AT_location[DW_OP_addr _timer_int_cnt]
  117. .dwattr DW$31, DW_AT_type(*DW$T$47)
  118. .dwattr DW$31, DW_AT_external(0x01)
  119. ; D:\CCStudio_v3.3\C5400\cgtools\bin\acp500.exe --keep_unneeded_types -q -D_DEBUG -DCHIP_5416 -ID:/CCStudio_v3.3/C5400/xdais/include -ID:/CCStudio_v3.3/C5400/csl/include -ID:/CCStudio_v3.3/bios_5_31_02/packages/ti/bios/include -ID:/CCStudio_v3.3/bios_5_31_02/packages/ti/rtdx/include/c5400 -ID:/CCStudio_v3.3/C5400/cgtools/include --mem_model:code=far --mem_model:data=flat -m --i_output_file C:\Users\jiachao\AppData\Local\Temp\TI8762 --template_info_file C:\Users\jiachao\AppData\Local\Temp\TI8766
  120. .sect ".text"
  121. .global _main
  122. DW$32 .dwtag DW_TAG_subprogram, DW_AT_name("main"), DW_AT_symbol_name("_main")
  123. .dwattr DW$32, DW_AT_low_pc(_main)
  124. .dwattr DW$32, DW_AT_high_pc(0x00)
  125. .dwattr DW$32, DW_AT_begin_file("timer.c")
  126. .dwattr DW$32, DW_AT_begin_line(0x31)
  127. .dwattr DW$32, DW_AT_begin_column(0x06)
  128. .dwpsn "timer.c",49,13
  129. .dwfde DW$CIE
  130. ;***************************************************************
  131. ;* FUNCTION DEF: _main *
  132. ;***************************************************************
  133. _main:
  134. .dwcfa 0x0e, 2
  135. .dwcfa 0x80, 34, 2
  136. .dwpsn "timer.c",51,3
  137. FCALLD #_uart_puts ; |51|
  138. LD #SL1,A
  139. ; call occurs [#_uart_puts] ; |51|
  140. .dwpsn "timer.c",54,3
  141. FCALL #_CSL_init ; |54|
  142. ; call occurs [#_CSL_init] ; |54|
  143. .dwpsn "timer.c",56,3
  144. FCALL #_taskFunc ; |56|
  145. ; call occurs [#_taskFunc] ; |56|
  146. .dwpsn "timer.c",57,9
  147. L1:
  148. DW$L$_main$2$B:
  149. B L1 ; |57|
  150. ; branch occurs ; |57|
  151. DW$L$_main$2$E:
  152. DW$33 .dwtag DW_TAG_loop
  153. .dwattr DW$33, DW_AT_name("D:\CCStudio_v3.3\examples\dsk5416\csl\timer\timer1\timer.asm:L1:1:1462526370")
  154. .dwattr DW$33, DW_AT_begin_file("timer.c")
  155. .dwattr DW$33, DW_AT_begin_line(0x39)
  156. .dwattr DW$33, DW_AT_end_line(0x39)
  157. DW$34 .dwtag DW_TAG_loop_range
  158. .dwattr DW$34, DW_AT_low_pc(DW$L$_main$2$B)
  159. .dwattr DW$34, DW_AT_high_pc(DW$L$_main$2$E)
  160. .dwendtag DW$33
  161. .dwattr DW$32, DW_AT_end_file("timer.c")
  162. .dwattr DW$32, DW_AT_end_line(0x3a)
  163. .dwattr DW$32, DW_AT_end_column(0x01)
  164. .dwendentry
  165. .dwendtag DW$32
  166. .sect ".text"
  167. .global _taskFunc
  168. DW$35 .dwtag DW_TAG_subprogram, DW_AT_name("taskFunc"), DW_AT_symbol_name("_taskFunc")
  169. .dwattr DW$35, DW_AT_low_pc(_taskFunc)
  170. .dwattr DW$35, DW_AT_high_pc(0x00)
  171. .dwattr DW$35, DW_AT_begin_file("timer.c")
  172. .dwattr DW$35, DW_AT_begin_line(0x3d)
  173. .dwattr DW$35, DW_AT_begin_column(0x06)
  174. .dwpsn "timer.c",61,21
  175. .dwfde DW$CIE
  176. ;***************************************************************
  177. ;* FUNCTION DEF: _taskFunc *
  178. ;***************************************************************
  179. _taskFunc:
  180. .dwcfa 0x0e, 2
  181. .dwcfa 0x80, 34, 2
  182. PSHM AR1
  183. .dwcfa 0x0e, 3
  184. .dwcfa 0x80, 10, 3
  185. FRAME #-5
  186. NOP
  187. .dwcfa 0x0e, 8
  188. DW$36 .dwtag DW_TAG_variable, DW_AT_name("eventId"), DW_AT_symbol_name("_eventId")
  189. .dwattr DW$36, DW_AT_type(*DW$T$19)
  190. .dwattr DW$36, DW_AT_location[DW_OP_breg17 2]
  191. DW$37 .dwtag DW_TAG_variable, DW_AT_name("old_intm"), DW_AT_symbol_name("_old_intm")
  192. .dwattr DW$37, DW_AT_type(*DW$T$10)
  193. .dwattr DW$37, DW_AT_location[DW_OP_breg17 3]
  194. DW$38 .dwtag DW_TAG_variable, DW_AT_name("err"), DW_AT_symbol_name("_err")
  195. .dwattr DW$38, DW_AT_type(*DW$T$19)
  196. .dwattr DW$38, DW_AT_location[DW_OP_breg17 4]
  197. .dwpsn "timer.c",65,10
  198. ST #0,*SP(4) ; |65|
  199. .dwpsn "timer.c",68,3
  200. FCALLD #_uart_puts ; |68|
  201. LD #SL2,A
  202. ; call occurs [#_uart_puts] ; |68|
  203. .dwpsn "timer.c",72,3
  204. FCALL #_IRQ_globalDisable ; |72|
  205. ; call occurs [#_IRQ_globalDisable] ; |72|
  206. STL A,*SP(3)
  207. .dwpsn "timer.c",76,3
  208. ST #1,*SP(0) ; |76|
  209. FCALLD #_TIMER_open ; |76|
  210. NOP
  211. LD #0,A
  212. ; call occurs [#_TIMER_open] ; |76|
  213. STL A,*(_mhTimer)
  214. .dwpsn "timer.c",80,3
  215. ST #_myTConfig,*SP(0) ; |80|
  216. FCALL #_TIMER_config ; |80|
  217. ; call occurs [#_TIMER_config] ; |80|
  218. .dwpsn "timer.c",83,3
  219. LD *(_mhTimer),A
  220. FCALL #_TIMER_getEventId ; |83|
  221. ; call occurs [#_TIMER_getEventId] ; |83|
  222. STL A,*SP(2)
  223. .dwpsn "timer.c",86,3
  224. FCALL #_IRQ_clear ; |86|
  225. ; call occurs [#_IRQ_clear] ; |86|
  226. .dwpsn "timer.c",89,3
  227. LDX #_timerIsr,16,A ; |89|
  228. OR #_timerIsr,A,A ; |89|
  229. DST A,*SP(0) ; |89|
  230. LD *SP(2),A
  231. FCALL #_IRQ_plug ; |89|
  232. ; call occurs [#_IRQ_plug] ; |89|
  233. .dwpsn "timer.c",92,3
  234. LD *SP(2),A
  235. FCALL #_IRQ_enable ; |92|
  236. ; call occurs [#_IRQ_enable] ; |92|
  237. .dwpsn "timer.c",95,3
  238. FCALL #_IRQ_globalEnable ; |95|
  239. ; call occurs [#_IRQ_globalEnable] ; |95|
  240. .dwpsn "timer.c",98,3
  241. LD *(_mhTimer),A
  242. FCALL #_TIMER_start ; |98|
  243. ; call occurs [#_TIMER_start] ; |98|
  244. .dwpsn "timer.c",101,9
  245. MVDM *(_timer_int_cnt),AR1
  246. STM #20,AR0
  247. CMPR 1,AR1 ; |101|
  248. BC L3,NTC ; |101|
  249. ; branchcc occurs ; |101|
  250. L2:
  251. DW$L$_taskFunc$2$B:
  252. MVDM *(_timer_int_cnt),AR1
  253. NOP
  254. CMPR 1,AR1 ; |101|
  255. BC L2,TC ; |101|
  256. ; branchcc occurs ; |101|
  257. DW$L$_taskFunc$2$E:
  258. L3:
  259. .dwpsn "timer.c",104,3
  260. LD *(_mhTimer),A
  261. FCALL #_TIMER_close ; |104|
  262. ; call occurs [#_TIMER_close] ; |104|
  263. .dwpsn "timer.c",107,3
  264. LD *SP(3),A
  265. FCALL #_IRQ_globalRestore ; |107|
  266. ; call occurs [#_IRQ_globalRestore] ; |107|
  267. .dwpsn "timer.c",109,4
  268. MVDM *(_timer_int_cnt),AR1
  269. STM #20,AR0
  270. CMPR 1,AR1 ; |109|
  271. BC L4,NTC ; |109|
  272. ; branchcc occurs ; |109|
  273. .dwpsn "timer.c",110,7
  274. ADDM #1,*SP(4) ; |110|
  275. L4:
  276. .dwpsn "timer.c",114,4
  277. LD *SP(4),A ; |114|
  278. BC L5,AEQ ; |114|
  279. ; branchcc occurs ; |114|
  280. .dwpsn "timer.c",115,6
  281. FCALLD #_uart_puts ; |115|
  282. LD #SL3,A
  283. ; call occurs [#_uart_puts] ; |115|
  284. B L6 ; |115|
  285. ; branch occurs ; |115|
  286. L5:
  287. .dwpsn "timer.c",117,6
  288. FCALLD #_uart_puts ; |117|
  289. LD #SL4,A
  290. ; call occurs [#_uart_puts] ; |117|
  291. L6:
  292. .dwpsn "timer.c",119,4
  293. FCALLD #_uart_puts ; |119|
  294. LD #SL5,A
  295. ; call occurs [#_uart_puts] ; |119|
  296. .dwpsn "timer.c",120,1
  297. FRAME #5
  298. .dwcfa 0x0e, 3
  299. POPM AR1
  300. .dwcfa 0xc0, 10
  301. .dwcfa 0x0e, 2
  302. NOP
  303. NOP
  304. FRET
  305. ; return occurs
  306. DW$39 .dwtag DW_TAG_loop
  307. .dwattr DW$39, DW_AT_name("D:\CCStudio_v3.3\examples\dsk5416\csl\timer\timer1\timer.asm:L2:1:1462526370")
  308. .dwattr DW$39, DW_AT_begin_file("timer.c")
  309. .dwattr DW$39, DW_AT_begin_line(0x65)
  310. .dwattr DW$39, DW_AT_end_line(0x65)
  311. DW$40 .dwtag DW_TAG_loop_range
  312. .dwattr DW$40, DW_AT_low_pc(DW$L$_taskFunc$2$B)
  313. .dwattr DW$40, DW_AT_high_pc(DW$L$_taskFunc$2$E)
  314. .dwendtag DW$39
  315. .dwattr DW$35, DW_AT_end_file("timer.c")
  316. .dwattr DW$35, DW_AT_end_line(0x78)
  317. .dwattr DW$35, DW_AT_end_column(0x01)
  318. .dwendentry
  319. .dwendtag DW$35
  320. .sect ".text"
  321. .global _timerIsr
  322. DW$41 .dwtag DW_TAG_subprogram, DW_AT_name("timerIsr"), DW_AT_symbol_name("_timerIsr")
  323. .dwattr DW$41, DW_AT_low_pc(_timerIsr)
  324. .dwattr DW$41, DW_AT_high_pc(0x00)
  325. .dwattr DW$41, DW_AT_begin_file("timer.c")
  326. .dwattr DW$41, DW_AT_begin_line(0x7d)
  327. .dwattr DW$41, DW_AT_begin_column(0x10)
  328. .dwpsn "timer.c",125,31
  329. .dwfde DW$CIE
  330. ;***************************************************************
  331. ;* FUNCTION DEF: _timerIsr *
  332. ;***************************************************************
  333. _timerIsr:
  334. NOP
  335. .dwcfa 0x0e, 2
  336. .dwcfa 0x80, 34, 2
  337. PSHM AL
  338. .dwcfa 0x0e, 3
  339. .dwcfa 0x80, 0, 3
  340. PSHM AH
  341. .dwcfa 0x0e, 4
  342. .dwcfa 0x80, 1, 4
  343. PSHM AG
  344. .dwcfa 0x0e, 5
  345. .dwcfa 0x80, 2, 5
  346. PSHM BL
  347. .dwcfa 0x0e, 6
  348. .dwcfa 0x80, 6, 6
  349. PSHM BH
  350. .dwcfa 0x0e, 7
  351. .dwcfa 0x80, 7, 7
  352. PSHM BG
  353. .dwcfa 0x0e, 8
  354. .dwcfa 0x80, 8, 8
  355. PSHM AR0
  356. .dwcfa 0x0e, 9
  357. .dwcfa 0x80, 9, 9
  358. PSHM AR1
  359. .dwcfa 0x0e, 10
  360. .dwcfa 0x80, 10, 10
  361. PSHM AR2
  362. .dwcfa 0x0e, 11
  363. .dwcfa 0x80, 11, 11
  364. PSHM AR3
  365. .dwcfa 0x0e, 12
  366. .dwcfa 0x80, 12, 12
  367. PSHM AR4
  368. .dwcfa 0x0e, 13
  369. .dwcfa 0x80, 13, 13
  370. PSHM AR5
  371. .dwcfa 0x0e, 14
  372. .dwcfa 0x80, 14, 14
  373. PSHM AR6
  374. .dwcfa 0x0e, 15
  375. .dwcfa 0x80, 15, 15
  376. PSHM AR7
  377. .dwcfa 0x0e, 16
  378. .dwcfa 0x80, 16, 16
  379. PSHM FP
  380. .dwcfa 0x0e, 17
  381. .dwcfa 0x80, 18, 17
  382. PSHM BK
  383. .dwcfa 0x0e, 18
  384. .dwcfa 0x80, 19, 18
  385. PSHM T
  386. .dwcfa 0x0e, 19
  387. .dwcfa 0x80, 20, 19
  388. PSHM ST0
  389. .dwcfa 0x0e, 20
  390. .dwcfa 0x80, 23, 20
  391. PSHM ST1
  392. NOP
  393. .dwcfa 0x0e, 21
  394. .dwcfa 0x80, 24, 21
  395. PSHM BRC
  396. .dwcfa 0x0e, 22
  397. .dwcfa 0x80, 25, 22
  398. PSHM PMST
  399. NOP
  400. .dwcfa 0x0e, 23
  401. .dwcfa 0x80, 29, 23
  402. PSHM RSA
  403. .dwcfa 0x0e, 24
  404. .dwcfa 0x80, 30, 24
  405. PSHM REA
  406. .dwcfa 0x0e, 25
  407. .dwcfa 0x80, 31, 25
  408. ANDM #32063,*(ST1)
  409. ORM #16384,*(ST1)
  410. ANDM #-4,*(PMST)
  411. LDM SP,A
  412. ANDM #-2,*(SP)
  413. NOP
  414. NOP
  415. PSHM AL
  416. FRAME #-1
  417. .dwcfa 0x0e, 25
  418. .dwpsn "timer.c",126,4
  419. LD *(_mhTimer),A
  420. FCALL #_TIMER_stop ; |126|
  421. ; call occurs [#_TIMER_stop] ; |126|
  422. .dwpsn "timer.c",127,4
  423. ADDM #1,*(_timer_int_cnt) ; |127|
  424. .dwpsn "timer.c",128,4
  425. MVDM *(_timer_int_cnt),AR1
  426. STM #20,AR0
  427. CMPR 1,AR1 ; |128|
  428. BC L7,NTC ; |128|
  429. ; branchcc occurs ; |128|
  430. .dwpsn "timer.c",129,6
  431. LD *(_mhTimer),A
  432. FCALL #_TIMER_start ; |129|
  433. ; call occurs [#_TIMER_start] ; |129|
  434. L7:
  435. .dwpsn "timer.c",132,4
  436. FCALLD #_uart_puts ; |132|
  437. LD #SL6,A
  438. ; call occurs [#_uart_puts] ; |132|
  439. .dwpsn "timer.c",133,1
  440. FRAME #1
  441. .dwcfa 0x0e, 25
  442. POPM SP
  443. NOP
  444. POPM REA
  445. .dwcfa 0xc0, 31
  446. .dwcfa 0x0e, 24
  447. POPM RSA
  448. .dwcfa 0xc0, 30
  449. .dwcfa 0x0e, 23
  450. POPM PMST
  451. NOP
  452. .dwcfa 0xc0, 29
  453. .dwcfa 0x0e, 22
  454. POPM BRC
  455. .dwcfa 0xc0, 25
  456. .dwcfa 0x0e, 21
  457. POPM ST1
  458. NOP
  459. .dwcfa 0xc0, 24
  460. .dwcfa 0x0e, 20
  461. POPM ST0
  462. .dwcfa 0xc0, 23
  463. .dwcfa 0x0e, 19
  464. POPM T
  465. .dwcfa 0xc0, 20
  466. .dwcfa 0x0e, 18
  467. POPM BK
  468. .dwcfa 0xc0, 19
  469. .dwcfa 0x0e, 17
  470. POPM FP
  471. .dwcfa 0xc0, 18
  472. .dwcfa 0x0e, 16
  473. POPM AR7
  474. .dwcfa 0xc0, 16
  475. .dwcfa 0x0e, 15
  476. POPM AR6
  477. .dwcfa 0xc0, 15
  478. .dwcfa 0x0e, 14
  479. POPM AR5
  480. .dwcfa 0xc0, 14
  481. .dwcfa 0x0e, 13
  482. POPM AR4
  483. .dwcfa 0xc0, 13
  484. .dwcfa 0x0e, 12
  485. POPM AR3
  486. .dwcfa 0xc0, 12
  487. .dwcfa 0x0e, 11
  488. POPM AR2
  489. .dwcfa 0xc0, 11
  490. .dwcfa 0x0e, 10
  491. POPM AR1
  492. .dwcfa 0xc0, 10
  493. .dwcfa 0x0e, 9
  494. POPM AR0
  495. .dwcfa 0xc0, 9
  496. .dwcfa 0x0e, 8
  497. POPM BG
  498. .dwcfa 0xc0, 8
  499. .dwcfa 0x0e, 7
  500. POPM BH
  501. .dwcfa 0xc0, 7
  502. .dwcfa 0x0e, 6
  503. POPM BL
  504. .dwcfa 0xc0, 6
  505. .dwcfa 0x0e, 5
  506. POPM AG
  507. .dwcfa 0xc0, 2
  508. .dwcfa 0x0e, 4
  509. POPM AH
  510. .dwcfa 0xc0, 1
  511. .dwcfa 0x0e, 3
  512. POPM AL
  513. .dwcfa 0xc0, 0
  514. .dwcfa 0x0e, 2
  515. NOP
  516. NOP
  517. FRETE
  518. ; branch occurs
  519. .dwattr DW$41, DW_AT_end_file("timer.c")
  520. .dwattr DW$41, DW_AT_end_line(0x85)
  521. .dwattr DW$41, DW_AT_end_column(0x01)
  522. .dwendentry
  523. .dwendtag DW$41
  524. ;***************************************************************
  525. ;* STRINGS *
  526. ;***************************************************************
  527. .sect ".const"
  528. SL1: .string "C5416 Timer Test Start...",10,0
  529. SL2: .string "<TIMER>",10,0
  530. SL3: .string "TEST FAILED",10,0
  531. SL4: .string "TEST PASSED",10,0
  532. SL5: .string "<DONE>",10,0
  533. SL6: .string "Entry Timer Isr function...",10,0
  534. ;***************************************************************
  535. ;* UNDEFINED EXTERNAL REFERENCES *
  536. ;***************************************************************
  537. .global _IRQ_clear
  538. .global _IRQ_enable
  539. .global _IRQ_globalDisable
  540. .global _IRQ_globalEnable
  541. .global _IRQ_globalRestore
  542. .global _IRQ_plug
  543. .global _CSL_init
  544. .global _TIMER_open
  545. .global _TIMER_close
  546. .global _TIMER_getEventId
  547. .global _TIMER_start
  548. .global _TIMER_stop
  549. .global _TIMER_config
  550. .global _uart_puts
  551. ;***************************************************************
  552. ;* TYPE INFORMATION *
  553. ;***************************************************************
  554. DW$T$22 .dwtag DW_TAG_subroutine_type
  555. .dwattr DW$T$22, DW_AT_language(DW_LANG_C)
  556. DW$42 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  557. .dwendtag DW$T$22
  558. DW$T$24 .dwtag DW_TAG_subroutine_type
  559. .dwattr DW$T$24, DW_AT_language(DW_LANG_C)
  560. DW$43 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
  561. .dwendtag DW$T$24
  562. DW$T$26 .dwtag DW_TAG_subroutine_type
  563. .dwattr DW$T$26, DW_AT_language(DW_LANG_C)
  564. DW$T$28 .dwtag DW_TAG_typedef, DW_AT_name("IRQ_IsrPtr"), DW_AT_type(*DW$T$27)
  565. .dwattr DW$T$28, DW_AT_language(DW_LANG_C)
  566. DW$T$29 .dwtag DW_TAG_subroutine_type
  567. .dwattr DW$T$29, DW_AT_language(DW_LANG_C)
  568. DW$44 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  569. DW$45 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$28)
  570. .dwendtag DW$T$29
  571. DW$T$33 .dwtag DW_TAG_subroutine_type
  572. .dwattr DW$T$33, DW_AT_language(DW_LANG_C)
  573. DW$46 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  574. .dwendtag DW$T$33
  575. DW$T$37 .dwtag DW_TAG_subroutine_type
  576. .dwattr DW$T$37, DW_AT_language(DW_LANG_C)
  577. DW$47 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  578. DW$48 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$36)
  579. .dwendtag DW$T$37
  580. DW$T$42 .dwtag DW_TAG_subroutine_type
  581. .dwattr DW$T$42, DW_AT_language(DW_LANG_C)
  582. DW$49 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$41)
  583. .dwendtag DW$T$42
  584. DW$T$44 .dwtag DW_TAG_subroutine_type
  585. .dwattr DW$T$44, DW_AT_language(DW_LANG_C)
  586. DW$T$19 .dwtag DW_TAG_typedef, DW_AT_name("Uint16"), DW_AT_type(*DW$T$9)
  587. .dwattr DW$T$19, DW_AT_language(DW_LANG_C)
  588. DW$T$45 .dwtag DW_TAG_subroutine_type, DW_AT_type(*DW$T$19)
  589. .dwattr DW$T$45, DW_AT_language(DW_LANG_C)
  590. DW$50 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$32)
  591. .dwendtag DW$T$45
  592. DW$T$47 .dwtag DW_TAG_volatile_type
  593. .dwattr DW$T$47, DW_AT_type(*DW$T$19)
  594. DW$T$10 .dwtag DW_TAG_base_type, DW_AT_name("int")
  595. .dwattr DW$T$10, DW_AT_encoding(DW_ATE_signed)
  596. .dwattr DW$T$10, DW_AT_byte_size(0x01)
  597. DW$T$48 .dwtag DW_TAG_subroutine_type, DW_AT_type(*DW$T$10)
  598. .dwattr DW$T$48, DW_AT_language(DW_LANG_C)
  599. DW$51 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  600. .dwendtag DW$T$48
  601. DW$T$50 .dwtag DW_TAG_subroutine_type, DW_AT_type(*DW$T$10)
  602. .dwattr DW$T$50, DW_AT_language(DW_LANG_C)
  603. DW$T$32 .dwtag DW_TAG_typedef, DW_AT_name("TIMER_Handle"), DW_AT_type(*DW$T$31)
  604. .dwattr DW$T$32, DW_AT_language(DW_LANG_C)
  605. DW$T$52 .dwtag DW_TAG_subroutine_type, DW_AT_type(*DW$T$32)
  606. .dwattr DW$T$52, DW_AT_language(DW_LANG_C)
  607. DW$52 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
  608. DW$53 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
  609. .dwendtag DW$T$52
  610. DW$T$35 .dwtag DW_TAG_typedef, DW_AT_name("TIMER_Config"), DW_AT_type(*DW$T$21)
  611. .dwattr DW$T$35, DW_AT_language(DW_LANG_C)
  612. DW$T$36 .dwtag DW_TAG_pointer_type, DW_AT_type(*DW$T$35)
  613. .dwattr DW$T$36, DW_AT_address_class(0x10)
  614. DW$T$41 .dwtag DW_TAG_pointer_type, DW_AT_type(*DW$T$40)
  615. .dwattr DW$T$41, DW_AT_address_class(0x10)
  616. DW$T$27 .dwtag DW_TAG_pointer_type, DW_AT_type(*DW$T$26)
  617. .dwattr DW$T$27, DW_AT_address_class(0x20)
  618. DW$T$9 .dwtag DW_TAG_base_type, DW_AT_name("unsigned short")
  619. .dwattr DW$T$9, DW_AT_encoding(DW_ATE_unsigned)
  620. .dwattr DW$T$9, DW_AT_byte_size(0x01)
  621. DW$T$31 .dwtag DW_TAG_pointer_type, DW_AT_type(*DW$T$20)
  622. .dwattr DW$T$31, DW_AT_address_class(0x10)
  623. DW$T$21 .dwtag DW_TAG_structure_type
  624. .dwattr DW$T$21, DW_AT_byte_size(0x02)
  625. DW$54 .dwtag DW_TAG_member, DW_AT_type(*DW$T$19)
  626. .dwattr DW$54, DW_AT_name("tcr"), DW_AT_symbol_name("_tcr")
  627. .dwattr DW$54, DW_AT_data_member_location[DW_OP_plus_uconst 0x0]
  628. .dwattr DW$54, DW_AT_accessibility(DW_ACCESS_public)
  629. DW$55 .dwtag DW_TAG_member, DW_AT_type(*DW$T$19)
  630. .dwattr DW$55, DW_AT_name("prd"), DW_AT_symbol_name("_prd")
  631. .dwattr DW$55, DW_AT_data_member_location[DW_OP_plus_uconst 0x1]
  632. .dwattr DW$55, DW_AT_accessibility(DW_ACCESS_public)
  633. .dwendtag DW$T$21
  634. DW$T$40 .dwtag DW_TAG_const_type
  635. .dwattr DW$T$40, DW_AT_type(*DW$T$39)
  636. DW$T$20 .dwtag DW_TAG_structure_type
  637. .dwattr DW$T$20, DW_AT_byte_size(0x01)
  638. DW$56 .dwtag DW_TAG_member, DW_AT_type(*DW$T$19)
  639. .dwattr DW$56, DW_AT_name("Private"), DW_AT_symbol_name("_Private")
  640. .dwattr DW$56, DW_AT_data_member_location[DW_OP_plus_uconst 0x0]
  641. .dwattr DW$56, DW_AT_accessibility(DW_ACCESS_public)
  642. .dwendtag DW$T$20
  643. DW$T$39 .dwtag DW_TAG_base_type, DW_AT_name("signed char")
  644. .dwattr DW$T$39, DW_AT_encoding(DW_ATE_signed_char)
  645. .dwattr DW$T$39, DW_AT_byte_size(0x01)
  646. .dwattr DW$32, DW_AT_external(0x01)
  647. .dwattr DW$35, DW_AT_external(0x01)
  648. .dwattr DW$41, DW_AT_external(0x01)
  649. .dwattr DW$CU, DW_AT_language(DW_LANG_C)
  650. ;***************************************************************
  651. ;* DWARF CIE ENTRIES *
  652. ;***************************************************************
  653. DW$CIE .dwcie 1, 34
  654. .dwcfa 0x0c, 17, 0
  655. .dwcfa 0x07, 0
  656. .dwcfa 0x07, 1
  657. .dwcfa 0x07, 2
  658. .dwcfa 0x07, 3
  659. .dwcfa 0x07, 4
  660. .dwcfa 0x07, 5
  661. .dwcfa 0x07, 6
  662. .dwcfa 0x07, 7
  663. .dwcfa 0x07, 8
  664. .dwcfa 0x07, 9
  665. .dwcfa 0x08, 10
  666. .dwcfa 0x07, 11
  667. .dwcfa 0x07, 12
  668. .dwcfa 0x07, 13
  669. .dwcfa 0x07, 14
  670. .dwcfa 0x08, 15
  671. .dwcfa 0x08, 16
  672. .dwcfa 0x07, 17
  673. .dwcfa 0x07, 18
  674. .dwcfa 0x07, 19
  675. .dwcfa 0x07, 20
  676. .dwcfa 0x07, 21
  677. .dwcfa 0x07, 22
  678. .dwcfa 0x07, 23
  679. .dwcfa 0x07, 24
  680. .dwcfa 0x07, 25
  681. .dwcfa 0x07, 26
  682. .dwcfa 0x07, 27
  683. .dwcfa 0x07, 28
  684. .dwcfa 0x07, 29
  685. .dwcfa 0x07, 30
  686. .dwcfa 0x07, 31
  687. .dwcfa 0x07, 32
  688. .dwcfa 0x07, 33
  689. .dwcfa 0x07, 34
  690. ;***************************************************************
  691. ;* DWARF REGISTER MAP *
  692. ;***************************************************************
  693. DW$57 .dwtag DW_TAG_assign_register, DW_AT_name("A")
  694. .dwattr DW$57, DW_AT_location[DW_OP_reg0]
  695. DW$58 .dwtag DW_TAG_assign_register, DW_AT_name("AH")
  696. .dwattr DW$58, DW_AT_location[DW_OP_reg1]
  697. DW$59 .dwtag DW_TAG_assign_register, DW_AT_name("AG")
  698. .dwattr DW$59, DW_AT_location[DW_OP_reg2]
  699. DW$60 .dwtag DW_TAG_assign_register, DW_AT_name("")
  700. .dwattr DW$60, DW_AT_location[DW_OP_reg3]
  701. DW$61 .dwtag DW_TAG_assign_register, DW_AT_name("")
  702. .dwattr DW$61, DW_AT_location[DW_OP_reg4]
  703. DW$62 .dwtag DW_TAG_assign_register, DW_AT_name("")
  704. .dwattr DW$62, DW_AT_location[DW_OP_reg5]
  705. DW$63 .dwtag DW_TAG_assign_register, DW_AT_name("B")
  706. .dwattr DW$63, DW_AT_location[DW_OP_reg6]
  707. DW$64 .dwtag DW_TAG_assign_register, DW_AT_name("BH")
  708. .dwattr DW$64, DW_AT_location[DW_OP_reg7]
  709. DW$65 .dwtag DW_TAG_assign_register, DW_AT_name("BG")
  710. .dwattr DW$65, DW_AT_location[DW_OP_reg8]
  711. DW$66 .dwtag DW_TAG_assign_register, DW_AT_name("AR0")
  712. .dwattr DW$66, DW_AT_location[DW_OP_reg9]
  713. DW$67 .dwtag DW_TAG_assign_register, DW_AT_name("AR1")
  714. .dwattr DW$67, DW_AT_location[DW_OP_reg10]
  715. DW$68 .dwtag DW_TAG_assign_register, DW_AT_name("AR2")
  716. .dwattr DW$68, DW_AT_location[DW_OP_reg11]
  717. DW$69 .dwtag DW_TAG_assign_register, DW_AT_name("AR3")
  718. .dwattr DW$69, DW_AT_location[DW_OP_reg12]
  719. DW$70 .dwtag DW_TAG_assign_register, DW_AT_name("AR4")
  720. .dwattr DW$70, DW_AT_location[DW_OP_reg13]
  721. DW$71 .dwtag DW_TAG_assign_register, DW_AT_name("AR5")
  722. .dwattr DW$71, DW_AT_location[DW_OP_reg14]
  723. DW$72 .dwtag DW_TAG_assign_register, DW_AT_name("AR6")
  724. .dwattr DW$72, DW_AT_location[DW_OP_reg15]
  725. DW$73 .dwtag DW_TAG_assign_register, DW_AT_name("AR7")
  726. .dwattr DW$73, DW_AT_location[DW_OP_reg16]
  727. DW$74 .dwtag DW_TAG_assign_register, DW_AT_name("SP")
  728. .dwattr DW$74, DW_AT_location[DW_OP_reg17]
  729. DW$75 .dwtag DW_TAG_assign_register, DW_AT_name("FP")
  730. .dwattr DW$75, DW_AT_location[DW_OP_reg18]
  731. DW$76 .dwtag DW_TAG_assign_register, DW_AT_name("BK")
  732. .dwattr DW$76, DW_AT_location[DW_OP_reg19]
  733. DW$77 .dwtag DW_TAG_assign_register, DW_AT_name("T")
  734. .dwattr DW$77, DW_AT_location[DW_OP_reg20]
  735. DW$78 .dwtag DW_TAG_assign_register, DW_AT_name("ASM")
  736. .dwattr DW$78, DW_AT_location[DW_OP_reg21]
  737. DW$79 .dwtag DW_TAG_assign_register, DW_AT_name("SXM")
  738. .dwattr DW$79, DW_AT_location[DW_OP_reg22]
  739. DW$80 .dwtag DW_TAG_assign_register, DW_AT_name("ST0")
  740. .dwattr DW$80, DW_AT_location[DW_OP_reg23]
  741. DW$81 .dwtag DW_TAG_assign_register, DW_AT_name("ST1")
  742. .dwattr DW$81, DW_AT_location[DW_OP_reg24]
  743. DW$82 .dwtag DW_TAG_assign_register, DW_AT_name("BRC")
  744. .dwattr DW$82, DW_AT_location[DW_OP_reg25]
  745. DW$83 .dwtag DW_TAG_assign_register, DW_AT_name("TC")
  746. .dwattr DW$83, DW_AT_location[DW_OP_reg26]
  747. DW$84 .dwtag DW_TAG_assign_register, DW_AT_name("PC")
  748. .dwattr DW$84, DW_AT_location[DW_OP_reg27]
  749. DW$85 .dwtag DW_TAG_assign_register, DW_AT_name("DB")
  750. .dwattr DW$85, DW_AT_location[DW_OP_reg28]
  751. DW$86 .dwtag DW_TAG_assign_register, DW_AT_name("PMST")
  752. .dwattr DW$86, DW_AT_location[DW_OP_reg29]
  753. DW$87 .dwtag DW_TAG_assign_register, DW_AT_name("RSA")
  754. .dwattr DW$87, DW_AT_location[DW_OP_reg30]
  755. DW$88 .dwtag DW_TAG_assign_register, DW_AT_name("REA")
  756. .dwattr DW$88, DW_AT_location[DW_OP_reg31]
  757. DW$89 .dwtag DW_TAG_assign_register, DW_AT_name("OVM")
  758. .dwattr DW$89, DW_AT_location[DW_OP_regx 0x20]
  759. DW$90 .dwtag DW_TAG_assign_register, DW_AT_name("FRCT")
  760. .dwattr DW$90, DW_AT_location[DW_OP_regx 0x21]
  761. DW$91 .dwtag DW_TAG_assign_register, DW_AT_name("CIE_RETA")
  762. .dwattr DW$91, DW_AT_location[DW_OP_regx 0x22]
  763. .dwendtag DW$CU