* M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 001 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 1 2 ;## C Compiler OUTPUT 3 ;## ccom308 Version 5.05.01.000 4 ;## Copyright(C) 1999(2005). Renesas Technology Corp. 5 ;## and Renesas Solutions Corp., All Rights Reserved. 6 ;## Compile Start Time Fri Jun 27 17:36:29 2014 7 8 ;## COMMAND_LINE: ccom308 C:\Users\Administrator\Downloads\ssp_rsk_r8c23_hew-20140307\ssp\target\rsk_m32c87_hew\ssp_workspace\libkernel\Debug\time_even 9 10 11 ;## Normal Optimize OFF 12 ;## ROM size Optimize OFF 13 ;## Speed Optimize OFF 14 ;## Default ROM is far 15 ;## Default RAM is near 16 17 .GLB __SB__ 18 .SB __SB__ 19 .FB 0 20 21 22 23 24 25 ;## # FUNCTION TOPPERS_assert_abort 26 27 28 29 30 ;## # FUNCTION _syslog_0 31 32 ;## # FUNCTION _syslog_1 33 34 ;## # FUNCTION _syslog_2 35 36 ;## # FUNCTION _syslog_3 37 38 ;## # FUNCTION _syslog_4 39 40 ;## # FUNCTION _syslog_5 41 42 ;## # FUNCTION _syslog_6 43 44 45 ;## # FUNCTION get_flgreg 46 47 ;## # FUNCTION set_flgreg 48 49 ;## # FUNCTION clr_ipl 50 51 ;## # FUNCTION disint 52 53 ;## # FUNCTION enaint 54 55 ;## # FUNCTION jmp_dispatcher 56 57 58 ;## # FUNCTION TOPPERS_disint 59 60 ;## # FUNCTION TOPPERS_enaint 61 62 * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 002 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 63 ;## # FUNCTION sil_reb_mem 64 65 ;## # FUNCTION sil_wrb_mem 66 67 ;## # FUNCTION sil_reh_mem 68 69 ;## # FUNCTION sil_wrh_mem 70 71 ;## # FUNCTION sil_reh_bem 72 73 ;## # FUNCTION sil_wrh_bem 74 75 ;## # FUNCTION sil_rew_mem 76 77 ;## # FUNCTION sil_wrw_mem 78 79 ;## # FUNCTION sil_rew_bem 80 81 ;## # FUNCTION sil_wrw_bem 82 83 84 85 86 87 ;## # FUNCTION reset_isp 88 89 90 ;## # FUNCTION sense_context 91 92 ;## # FUNCTION t_lock_cpu 93 94 ;## # FUNCTION i_lock_cpu 95 96 ;## # FUNCTION t_unlock_cpu 97 98 ;## # FUNCTION i_unlock_cpu 99 100 ;## # FUNCTION x_sense_lock 101 102 ;## # FUNCTION x_set_ipm 103 104 ;## # FUNCTION x_get_ipm 105 106 ;## # FUNCTION x_disable_int 107 108 ;## # FUNCTION x_enable_int 109 110 ;## # FUNCTION x_clear_int 111 112 ;## # FUNCTION x_probe_int 113 114 ;## # FUNCTION x_define_inh 115 116 ;## # FUNCTION i_begin_int 117 118 ;## # FUNCTION i_end_int 119 120 ;## # FUNCTION x_define_exc 121 122 ;## # FUNCTION idle_loop 123 124 * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 003 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 125 126 ;## # FUNCTION queue_initialize 127 128 ;## # FUNCTION queue_insert_prev 129 130 ;## # FUNCTION queue_delete_next 131 132 ;## # FUNCTION queue_empty 133 134 135 136 ;## # FUNCTION _kernel_initialize_time_event 137 ;## # FRAME AUTO ( __TMP1) size 4, offset -6 138 ;## # FRAME AUTO ( __PAD1) size 1, offset -1 139 ;## # FRAME AUTO ( __TMP2) size 1, offset -2 140 ;## # ARG Size(0) Auto Size(6) Context Size(8) 141 142 143 .SECTION program,CODE,ALIGN 144 .align 145 ;## # C_SRC : { 146 .glb __kernel_initialize_time_event 147 000000 __kernel_initialize_time_event: 148 000000 EC06 enter #06H 149 000002 8F28 pushm R2,A0 150 ;## # C_SRC : current_time = 0U; 151 000004 B6D10000r00 * mov.l #00000000H,__kernel_current_time:16 152 ;## # C_SRC : min_time = 0U; 153 000009 B6D10000r00 * mov.l #00000000H,__kernel_min_time:16 154 ;## # C_SRC : queue_initialize(&TMEVT_HEAD() , (QUEIDX)tnum_tmevt_queue); 155 00000E B8AB000000r mov.b __kernel_tnum_tmevt_queue,R0L 156 000013 30FE S mov.b R0L,-2[FB] ; __TMP2 157 000015 B9AB000000r mov.w __kernel_tnum_tmevt_queue,R0 158 00001A F920 Q mov.w #0H,R2 159 00001C C9A2 add.l R2R0,R2R0 160 00001E 88B100000000r add.l #(0FFFFFFH & __kernel_tmevt_queue),R2R0 161 000024 C3E3FA mov.l R2R0,-6[FB] ; __TMP1 162 ;## # C_SRC : queue->next = queue_null;/* misrac:1998 rule 18 numeric constant */ 163 000027 0992FBFEFA mov.b -2[FB],[-6[FB]] ; __TMP2 __TMP1 164 ;## # C_SRC : queue->prev = queue_null; 165 00002C 78FA S mov.l -6[FB],A0 ; __TMP1 166 00002E 923BFE01 mov.b -2[FB],000001H[A0] ; __TMP2 167 ;## # C_SRC : } 168 000032 8E14 popm R2,A0 169 000034 FC exitd 170 000035 E1: 171 000035 M1: 172 173 174 ;## # FUNCTION _kernel_time_event_enqueue 175 ;## # FRAME AUTO ( __TMP3) size 4, offset -8 176 ;## # FRAME AUTO ( tmevtid) size 2, offset -4 177 ;## # FRAME AUTO ( pos) size 1, offset -8 178 ;## # FRAME AUTO ( __TMP4) size 1, offset -2 179 ;## # FRAME AUTO ( __TMP5) size 1, offset -1 180 ;## # FRAME ARG ( evttim) size 4, offset 8 181 ;## # FRAME ARG (callback) size 4, offset 12 182 ;## # FRAME ARG ( arg) size 4, offset 16 183 ;## # REGISTER ARG ( tmevtid) size 2, REGISTER R0 184 ;## # ARG Size(12) Auto Size(8) Context Size(8) 185 186 000035 DE .align * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 004 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 187 ;## # C_SRC : { 188 .glb $_kernel_time_event_enqueue 189 000036 $_kernel_time_event_enqueue: 190 000036 EC08 enter #08H 191 000038 8F7C pushm R1,R2,R3,A0,A1 192 00003A 31FC S mov.w R0,-4[FB] ; tmevtid tmevtid 193 ;## # C_SRC : QUEIDX pos = TMEVT_HEAD().next; 194 00003C B9AB000000r mov.w __kernel_tnum_tmevt_queue,R0 195 000041 F920 Q mov.w #0H,R2 196 000043 C1A3 mov.l R2R0,A0 197 000045 81A2 add.l A0,A0 198 000047 A2CB0000rF8 mov.b __kernel_tmevt_queue:16[A0],-8[FB] ; pos 199 ;## # C_SRC : && (EVTTIM_LE(tmevt_time[pos] , evttim))) { 200 00004C L295: 201 00004C B8AB000000r mov.b __kernel_tnum_tmevt_queue,R0L 202 000051 C2E6F8 cmp.b R0L,-8[FB] ; pos 203 000054 DA2E jeq L297 204 000056 99B308 mov.l 8[FB],R2R0 ; evttim 205 000059 B9B00000r sub.l __kernel_min_time:16,R2R0 206 00005D B8D100 movx #0H,R3R1 207 000060 7EF8 S mov.b -8[FB],R1L ; pos 208 000062 C1B3 mov.l R3R1,A0 209 000064 80A102 shlnc.l #2,A0 210 000067 A9C30000r mov.l __kernel_tmevt_time:16[A0],R3R1 211 00006B B9F00000r sub.l __kernel_min_time:16,R3R1 212 00006F C9E1 cmp.l R2R0,R3R1 213 000071 CB11 jgtu L335 214 ;## # C_SRC : pos = tmevt_queue[pos].next; 215 000073 B89100 movx #0H,R2R0 216 000076 38F8 S mov.b -8[FB],R0L ; pos 217 000078 C1A3 mov.l R2R0,A0 218 00007A 81A2 add.l A0,A0 219 00007C A2CB0000rF8 mov.b __kernel_tmevt_queue:16[A0],-8[FB] ; pos 220 ;## # C_SRC : } 221 000081 BBCA B jmp L295 222 000083 L335: 223 000083 L297: 224 ;## # C_SRC : queue_insert_prev(&(tmevt_queue[0]) , pos , (QUEIDX)tmevtid); 225 000083 38FC S mov.b -4[FB],R0L ; tmevtid 226 000085 30FF S mov.b R0L,-1[FB] ; __TMP5 227 000087 92FBF8FE mov.b -8[FB],-2[FB] ; pos __TMP4 228 00008B B2F1F800000000r mov.l #(__kernel_tmevt_queue&0FFFFFFH),-8[FB] ; __TMP3 229 ;## # C_SRC : top[entry].prev = top[queue].prev; 230 000092 B89100 movx #0H,R2R0 231 000095 38FE S mov.b -2[FB],R0L ; __TMP4 232 000097 C9A2 add.l R2R0,R2R0 233 000099 99B2F8 add.l -8[FB],R2R0 ; __TMP3 234 00009C B8D100 movx #0H,R3R1 235 00009F 7EFF S mov.b -1[FB],R1L ; __TMP5 236 0000A1 C1B3 mov.l R3R1,A0 237 0000A3 81A2 add.l A0,A0 238 0000A5 91B2F8 add.l -8[FB],A0 ; __TMP3 239 0000A8 C1E3 mov.l R2R0,A1 240 0000AA 921B0101 mov.b 000001H[A1],000001H[A0] 241 ;## # C_SRC : top[entry].next = queue; 242 0000AE B89100 movx #0H,R2R0 243 0000B1 38FF S mov.b -1[FB],R0L ; __TMP5 244 0000B3 C1A3 mov.l R2R0,A0 245 0000B5 81A2 add.l A0,A0 246 0000B7 91B2F8 add.l -8[FB],A0 ; __TMP3 247 0000BA 903BFE mov.b -2[FB],[A0] ; __TMP4 248 ;## # C_SRC : top[top[queue].prev].next = entry; * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 005 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 249 0000BD B89100 movx #0H,R2R0 250 0000C0 38FE S mov.b -2[FB],R0L ; __TMP4 251 0000C2 C1A3 mov.l R2R0,A0 252 0000C4 81A2 add.l A0,A0 253 0000C6 91B2F8 add.l -8[FB],A0 ; __TMP3 254 0000C9 B89100 movx #0H,R2R0 255 0000CC 988B01 mov.b 000001H[A0],R0L 256 0000CF C1A3 mov.l R2R0,A0 257 0000D1 81A2 add.l A0,A0 258 0000D3 91B2F8 add.l -8[FB],A0 ; __TMP3 259 0000D6 903BFF mov.b -1[FB],[A0] ; __TMP5 260 ;## # C_SRC : top[queue].prev = entry; 261 0000D9 B89100 movx #0H,R2R0 262 0000DC 38FE S mov.b -2[FB],R0L ; __TMP4 263 0000DE C1A3 mov.l R2R0,A0 264 0000E0 81A2 add.l A0,A0 265 0000E2 91B2F8 add.l -8[FB],A0 ; __TMP3 266 0000E5 923BFF01 mov.b -1[FB],000001H[A0] ; __TMP5 267 ;## # C_SRC : tmevt_callback[tmevtid] = (CBACK)callback; 268 0000E9 39FC S mov.w -4[FB],R0 ; tmevtid 269 0000EB C99E exts.w R0 270 0000ED C1A3 mov.l R2R0,A0 271 0000EF 80A102 shlnc.l #2,A0 272 0000F2 95330C0000r mov.l 12[FB],__kernel_tmevt_callback:16[A0] ; callback 273 ;## # C_SRC : tmevt_arg[tmevtid] = arg; 274 0000F7 39FC S mov.w -4[FB],R0 ; tmevtid 275 0000F9 C99E exts.w R0 276 0000FB C1A3 mov.l R2R0,A0 277 0000FD 80A102 shlnc.l #2,A0 278 000100 9533100000r mov.l 16[FB],__kernel_tmevt_arg:16[A0] ; arg 279 ;## # C_SRC : tmevt_time[tmevtid] = evttim; 280 000105 39FC S mov.w -4[FB],R0 ; tmevtid 281 000107 C99E exts.w R0 282 000109 C1A3 mov.l R2R0,A0 283 00010B 80A102 shlnc.l #2,A0 284 00010E 9533080000r mov.l 8[FB],__kernel_tmevt_time:16[A0] ; evttim 285 ;## # C_SRC : } 286 000113 8E3E popm R1,R2,R3,A0,A1 287 000115 FC exitd 288 000116 E2: 289 000116 M2: 290 291 292 ;## # FUNCTION _kernel_time_event_dequeue 293 ;## # FRAME AUTO ( __TMP6) size 4, offset -6 294 ;## # FRAME AUTO ( tmevtid) size 2, offset -6 295 ;## # FRAME AUTO ( __PAD2) size 1, offset -1 296 ;## # FRAME AUTO ( __TMP7) size 1, offset -2 297 ;## # REGISTER ARG ( tmevtid) size 2, REGISTER R0 298 ;## # ARG Size(0) Auto Size(6) Context Size(8) 299 300 .align 301 ;## # C_SRC : { 302 .glb $_kernel_time_event_dequeue 303 000116 $_kernel_time_event_dequeue: 304 000116 EC06 enter #06H 305 000118 8F7C pushm R1,R2,R3,A0,A1 306 00011A 31FA S mov.w R0,-6[FB] ; tmevtid tmevtid 307 ;## # C_SRC : (void)queue_delete_next(&(tmevt_queue[0]) , (QUEIDX)tmevtid); 308 00011C 38FA S mov.b -6[FB],R0L ; tmevtid 309 00011E 30FE S mov.b R0L,-2[FB] ; __TMP7 310 000120 B2F1FA00000000r mov.l #(__kernel_tmevt_queue&0FFFFFFH),-6[FB] ; __TMP6 * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 006 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 311 ;## # C_SRC : top[top[queue].next].prev = top[queue].prev; 312 000127 B89100 movx #0H,R2R0 313 00012A 38FE S mov.b -2[FB],R0L ; __TMP7 314 00012C C9A2 add.l R2R0,R2R0 315 00012E 99B2FA add.l -6[FB],R2R0 ; __TMP6 316 000131 B8D100 movx #0H,R3R1 317 000134 7EFE S mov.b -2[FB],R1L ; __TMP7 318 000136 C1B3 mov.l R3R1,A0 319 000138 81A2 add.l A0,A0 320 00013A 91B2FA add.l -6[FB],A0 ; __TMP6 321 00013D B8D100 movx #0H,R3R1 322 000140 88CB mov.b [A0],R1L 323 000142 C1B3 mov.l R3R1,A0 324 000144 81A2 add.l A0,A0 325 000146 91B2FA add.l -6[FB],A0 ; __TMP6 326 000149 C1E3 mov.l R2R0,A1 327 00014B 921B0101 mov.b 000001H[A1],000001H[A0] 328 ;## # C_SRC : top[top[queue].prev].next = top[queue].next; 329 00014F B89100 movx #0H,R2R0 330 000152 38FE S mov.b -2[FB],R0L ; __TMP7 331 000154 C9A2 add.l R2R0,R2R0 332 000156 99B2FA add.l -6[FB],R2R0 ; __TMP6 333 000159 B8D100 movx #0H,R3R1 334 00015C 7EFE S mov.b -2[FB],R1L ; __TMP7 335 00015E C1B3 mov.l R3R1,A0 336 000160 81A2 add.l A0,A0 337 000162 91B2FA add.l -6[FB],A0 ; __TMP6 338 000165 B8D100 movx #0H,R3R1 339 000168 98CB01 mov.b 000001H[A0],R1L 340 00016B C1B3 mov.l R3R1,A0 341 00016D 81A2 add.l A0,A0 342 00016F 91B2FA add.l -6[FB],A0 ; __TMP6 343 000172 C1E3 mov.l R2R0,A1 344 000174 801B mov.b [A1],[A0] 345 ;## # C_SRC : return top[queue].next; 346 000176 B89100 movx #0H,R2R0 347 000179 38FE S mov.b -2[FB],R0L ; __TMP7 348 00017B C1A3 mov.l R2R0,A0 349 00017D 81A2 add.l A0,A0 350 00017F 91B2FA add.l -6[FB],A0 ; __TMP6 351 000182 888B mov.b [A0],R0L 352 ;## # C_SRC : } 353 000184 8E3E popm R1,R2,R3,A0,A1 354 000186 FC exitd 355 000187 E3: 356 000187 M3: 357 358 359 ;## # FUNCTION _kernel_signal_time 360 ;## # FRAME AUTO ( __TMP8) size 4, offset -16 361 ;## # FRAME AUTO ( ipl) size 2, offset -12 362 ;## # FRAME AUTO ( ipl) size 2, offset -16 363 ;## # FRAME AUTO ( ipl) size 2, offset -10 364 ;## # FRAME AUTO ( flg_reg) size 2, offset -8 365 ;## # FRAME AUTO ( ipl) size 2, offset -6 366 ;## # FRAME AUTO ( ipl) size 2, offset -10 367 ;## # FRAME AUTO ( flg_reg) size 2, offset -4 368 ;## # FRAME AUTO ( pos) size 1, offset -2 369 ;## # FRAME AUTO ( __TMP9) size 1, offset -1 370 ;## # FRAME AUTO ( evtid) size 1, offset -10 371 ;## # ARG Size(0) Auto Size(16) Context Size(8) 372 * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 007 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 373 000187 DE .align 374 ;## # C_SRC : { 375 .glb __kernel_signal_time 376 000188 __kernel_signal_time: 377 000188 EC10 enter #010H 378 00018A 8F7C pushm R1,R2,R3,A0,A1 379 ;## # C_SRC : QUEIDX pos = TMEVT_HEAD().next , evtid; 380 00018C B9AB000000r mov.w __kernel_tnum_tmevt_queue,R0 381 000191 F920 Q mov.w #0H,R2 382 000193 C1A3 mov.l R2R0,A0 383 000195 81A2 add.l A0,A0 384 000197 A2CB0000rFE mov.b __kernel_tmevt_queue:16[A0],-2[FB] ; pos 385 ;## # C_SRC : Asm(" stc flg, $$[FB]", ipl); 386 ;#### ASM START 387 00019C 01D3DAF4 stc flg, -12[FB] 388 ;#### ASM END 389 ;## # C_SRC : return ipl; 390 0001A0 39F4 S mov.w -12[FB],R0 ; ipl 391 ;## # C_SRC : ipl = get_flgreg(); 392 0001A2 31F0 S mov.w R0,-16[FB] ; ipl 393 ;## # C_SRC : if (IPL_LOCK > ipl) { 394 0001A4 77F00050 S cmp.w #5000H,-16[FB] ; ipl 395 0001A8 CA13 jgeu L347 396 ;## # C_SRC : { 397 0001AA 39F0 S mov.w -16[FB],R0 ; ipl 398 0001AC 883F8F and.b #8fH,R0H 399 0001AF 882F50 or.b #50H,R0H 400 0001B2 31F6 S mov.w R0,-10[FB] ; ipl 401 ;## # C_SRC : uint16_t flg_reg = ipl; 402 0001B4 93FBF6F8 mov.w -10[FB],-8[FB] ; ipl flg_reg 403 ;## # C_SRC : Asm(" ldc $$[FB], flg", flg_reg); 404 ;#### ASM START 405 0001B8 01D3CAF8 ldc -8[FB], flg 406 ;#### ASM END 407 0001BC L347: 408 ;## # C_SRC : saved_ipl = ipl; 409 0001BC 97FBF00000r mov.w -16[FB],__kernel_saved_ipl:16 ; ipl 410 ;## # C_SRC : lock_flag = true; 411 0001C1 F7E10000r Q mov.w #0001H,__kernel_lock_flag:16 412 ;## # C_SRC : current_time += (EVTTIM)TIC_NUME; 413 0001C5 F6F10000r Q add.l #00000001H,__kernel_current_time:16 414 ;## # C_SRC : && EVTTIM_LT(tmevt_time[pos] , current_time)) { 415 0001C9 L355: 416 0001C9 B8AB000000r mov.b __kernel_tnum_tmevt_queue,R0L 417 0001CE C2E6FE cmp.b R0L,-2[FB] ; pos 418 0001D1 9A04 * jeq L357 CEC200 419 0001D6 B9B30000r mov.l __kernel_current_time:16,R2R0 420 0001DA B9B00000r sub.l __kernel_min_time:16,R2R0 421 0001DE B8D100 movx #0H,R3R1 422 0001E1 7EFE S mov.b -2[FB],R1L ; pos 423 0001E3 C1B3 mov.l R3R1,A0 424 0001E5 80A102 shlnc.l #2,A0 425 0001E8 A9C30000r mov.l __kernel_tmevt_time:16[A0],R3R1 426 0001EC B9F00000r sub.l __kernel_min_time:16,R3R1 427 0001F0 C9E1 cmp.l R2R0,R3R1 428 0001F2 8A04 * jgeu L403 CEA100 429 ;## # C_SRC : (void)queue_delete_next(&(tmevt_queue[0]) , pos); 430 0001F7 92FBFEFF mov.b -2[FB],-1[FB] ; pos __TMP9 431 0001FB B2F1F000000000r mov.l #(__kernel_tmevt_queue&0FFFFFFH),-16[FB] ; __TMP8 432 ;## # C_SRC : top[top[queue].next].prev = top[queue].prev; * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 008 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 433 000202 B89100 movx #0H,R2R0 434 000205 38FF S mov.b -1[FB],R0L ; __TMP9 435 000207 C9A2 add.l R2R0,R2R0 436 000209 99B2F0 add.l -16[FB],R2R0 ; __TMP8 437 00020C B8D100 movx #0H,R3R1 438 00020F 7EFF S mov.b -1[FB],R1L ; __TMP9 439 000211 C1B3 mov.l R3R1,A0 440 000213 81A2 add.l A0,A0 441 000215 91B2F0 add.l -16[FB],A0 ; __TMP8 442 000218 B8D100 movx #0H,R3R1 443 00021B 88CB mov.b [A0],R1L 444 00021D C1B3 mov.l R3R1,A0 445 00021F 81A2 add.l A0,A0 446 000221 91B2F0 add.l -16[FB],A0 ; __TMP8 447 000224 C1E3 mov.l R2R0,A1 448 000226 921B0101 mov.b 000001H[A1],000001H[A0] 449 ;## # C_SRC : top[top[queue].prev].next = top[queue].next; 450 00022A B89100 movx #0H,R2R0 451 00022D 38FF S mov.b -1[FB],R0L ; __TMP9 452 00022F C9A2 add.l R2R0,R2R0 453 000231 99B2F0 add.l -16[FB],R2R0 ; __TMP8 454 000234 B8D100 movx #0H,R3R1 455 000237 7EFF S mov.b -1[FB],R1L ; __TMP9 456 000239 C1B3 mov.l R3R1,A0 457 00023B 81A2 add.l A0,A0 458 00023D 91B2F0 add.l -16[FB],A0 ; __TMP8 459 000240 B8D100 movx #0H,R3R1 460 000243 98CB01 mov.b 000001H[A0],R1L 461 000246 C1B3 mov.l R3R1,A0 462 000248 81A2 add.l A0,A0 463 00024A 91B2F0 add.l -16[FB],A0 ; __TMP8 464 00024D C1E3 mov.l R2R0,A1 465 00024F 801B mov.b [A1],[A0] 466 ;## # C_SRC : return top[queue].next; 467 000251 B89100 movx #0H,R2R0 468 000254 38FF S mov.b -1[FB],R0L ; __TMP9 469 000256 C1A3 mov.l R2R0,A0 470 000258 81A2 add.l A0,A0 471 00025A 91B2F0 add.l -16[FB],A0 ; __TMP8 472 00025D 88CB mov.b [A0],R1L 473 ;## # C_SRC : evtid = pos; 474 00025F 92FBFEF6 mov.b -2[FB],-10[FB] ; pos evtid 475 ;## # C_SRC : pos = tmevt_queue[pos].next; 476 000263 B89100 movx #0H,R2R0 477 000266 38FE S mov.b -2[FB],R0L ; pos 478 000268 C1A3 mov.l R2R0,A0 479 00026A 81A2 add.l A0,A0 480 00026C A2CB0000rFE mov.b __kernel_tmevt_queue:16[A0],-2[FB] ; pos 481 ;## # C_SRC : (*tmevt_callback[evtid])(tmevt_arg[evtid]); 482 000271 B89100 movx #0H,R2R0 483 000274 38F6 S mov.b -10[FB],R0L ; evtid 484 000276 88A102 shlnc.l #2,R2R0 485 000279 88B100000000r add.l #(0FFFFFFH & __kernel_tmevt_arg),R2R0 486 00027F C1A3 mov.l R2R0,A0 487 000281 A001 push.l [A0] 488 000283 B89100 movx #0H,R2R0 489 000286 38F6 S mov.b -10[FB],R0L ; evtid 490 000288 C1A3 mov.l R2R0,A0 491 00028A 80A102 shlnc.l #2,A0 492 00028D 9601000000r jsri.a __kernel_tmevt_callback[A0] 493 000292 53 Q add.l #04H,SP 494 ;## # C_SRC : } * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 009 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 495 000293 CE35FF W jmp L355 496 000296 L403: 497 000296 L357: 498 ;## # C_SRC : min_time = current_time; 499 000296 B7F30000r0000r mov.l __kernel_current_time:16,__kernel_min_time:16 500 ;## # C_SRC : lock_flag = false; 501 00029C 130000r Z mov.w #0000H,__kernel_lock_flag:16 502 ;## # C_SRC : Asm(" stc flg, $$[FB]", ipl); 503 ;#### ASM START 504 00029F 01D3DAFA stc flg, -6[FB] 505 ;#### ASM END 506 ;## # C_SRC : return ipl; 507 0002A3 39FA S mov.w -6[FB],R0 ; ipl 508 ;## # C_SRC : { 509 0002A5 5F0000r S mov.w __kernel_saved_ipl:16,R1 510 0002A8 89FF0070 and.w #7000H,R1 511 0002AC 883F8F and.b #8fH,R0H 512 0002AF C9B5 or.w R1,R0 513 0002B1 31F6 S mov.w R0,-10[FB] ; ipl 514 ;## # C_SRC : uint16_t flg_reg = ipl; 515 0002B3 93FBF6FC mov.w -10[FB],-4[FB] ; ipl flg_reg 516 ;## # C_SRC : Asm(" ldc $$[FB], flg", flg_reg); 517 ;#### ASM START 518 0002B7 01D3CAFC ldc -4[FB], flg 519 ;#### ASM END 520 ;## # C_SRC : } 521 0002BB 8E3E popm R1,R2,R3,A0,A1 522 0002BD FC exitd 523 0002BE E4: 524 0002BE M4: 525 526 .glb $act_tsk 527 .glb $iact_tsk 528 .glb $psnd_dtq 529 .glb $ipsnd_dtq 530 .glb $prcv_dtq 531 .glb $set_flg 532 .glb $iset_flg 533 .glb $clr_flg 534 .glb $pol_flg 535 .glb _loc_cpu 536 .glb _iloc_cpu 537 .glb _unl_cpu 538 .glb _iunl_cpu 539 .glb _dis_dsp 540 .glb _ena_dsp 541 .glb _sns_ctx 542 .glb _sns_loc 543 .glb _sns_dsp 544 .glb _sns_dpn 545 .glb _sns_ker 546 .glb _ext_ker 547 .glb $dis_int 548 .glb $ena_int 549 .glb $sta_cyc 550 .glb $stp_cyc 551 .glb $sta_alm 552 .glb $stp_alm 553 .glb _get_tim 554 .glb $syslog_wri_log 555 .glb _syslog_printf 556 .glb _syslog_print * M32C SERIES ASSEMBLER * SOURCE LIST Fri Jun 27 17:36:29 2014 PAGE 010 SEQ. LOC. OBJ. 0XMSDA .*....*....SOURCE STATEMENT....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0 557 .glb $syslog_lostmsg 558 .glb _syslog 559 .glb _sil_dly_nse 560 .glb $target_fput_log 561 .glb _sio_initialize 562 .glb $sio_opn_por 563 .glb _sio_cls_por 564 .glb _sio_isr_rcv 565 .glb _sio_isr_snd 566 .glb _sio_snd_chr 567 .glb _sio_rcv_chr 568 .glb _sio_ena_cbr 569 .glb _sio_dis_cbr 570 .glb _sio_irdy_snd 571 .glb _sio_irdy_rcv 572 .glb $sio_pol_snd_chr 573 .glb __kernel_target_initialize 574 .glb __kernel_target_exit 575 .glb __kernel_intnest 576 .glb __kernel_lock_flag 577 .glb __kernel_saved_ipl 578 .glb __kernel_intc_reg 579 .glb __kernel_intpri_table 580 .glb $_kernel_x_config_int 581 .glb __kernel_prc_initialize 582 .glb __kernel_start_dispatch 583 .glb __kernel_call_exit_kernel 584 .glb __kernel_prc_terminate 585 .glb __kernel_initialize_object 586 .glb __kernel_call_inirtn 587 .glb __kernel_call_terrtn 588 .glb _istksz 589 .glb _istk 590 .glb __kernel_kerflg 591 .glb _sta_ker 592 .glb __kernel_exit_kernel 593 .glb __kernel_tnum_tmevt_queue 594 .glb __kernel_tmevt_queue 595 .glb __kernel_tmevt_time 596 .glb __kernel_tmevt_callback 597 .glb __kernel_tmevt_arg 598 599 .SECTION bss_NE,DATA,ALIGN 600 .glb __kernel_current_time 601 000000 __kernel_current_time: 602 000000(000004H) .blkb 4 603 .glb __kernel_min_time 604 000004 __kernel_min_time: 605 000004(000004H) .blkb 4 606 ;################################# 607 ;### STATIC DATA INFORMATION ### 608 ;################################# 609 ;################################# 610 ;################################# 611 ;################################# 612 613 .END Information List TOTAL ERROR(S) 00000 TOTAL WARNING(S) 00000 TOTAL LINE(S) 00613 LINES Section List Attr Size Name CODE 00000702(0002BEH) program DATA 00000008(000008H) bss_NE