thrControl.asm
上传用户:dahaojd
上传日期:2008-01-29
资源大小:14357k
文件大小:16k
- ;******************************************************************************
- ;* TMS320C6x C/C++ Codegen PC Version 4.36 *
- ;* Date/Time created: Wed Mar 22 15:36:22 2006 *
- ;******************************************************************************
- ;******************************************************************************
- ;* GLOBAL FILE PARAMETERS *
- ;* *
- ;* Architecture : TMS320C64xx *
- ;* Optimization : Enabled at level 3 *
- ;* Optimizing for : Speed *
- ;* Based on options: -o3, no -ms *
- ;* Endian : Little *
- ;* Interrupt Thrshld : Disabled *
- ;* Memory Model : Large *
- ;* Calls to RTS : Far *
- ;* Pipelining : Enabled *
- ;* Speculative Load : Enabled *
- ;* Memory Aliases : Presume not aliases (optimistic) *
- ;* Debug Info : No Debug Info *
- ;* *
- ;******************************************************************************
- .asg A15, FP
- .asg B14, DP
- .asg B15, SP
- .global $bss
- .global _externalControl
- _externalControl: .usect ".far",8,128
- .global _externalControlPrev
- _externalControlPrev: .usect ".far",8,4
- ; c:tic6000cgtoolsbinopt6x.exe -t -DI0 -v6400 -q -O3 C:DOCUME~1ZHAOQI~1LOCALS~1TempTI3616_2 C:DOCUME~1ZHAOQI~1LOCALS~1TempTI3616_5 -w C:/ICETEK-DM642-C V2.22/jpeg_motion/obj/
- .sect ".text"
- .global _thrControlStartup
- ;******************************************************************************
- ;* FUNCTION NAME: _thrControlStartup *
- ;* *
- ;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
- ;* B6,B7,B8,B9,B10,B11,B13,SP,A16,A17,A18,A19,A20, *
- ;* A21,A22,A23,A24,A25,A26,A27,A28,A29,A30,A31,B16, *
- ;* B17,B18,B19,B20,B21,B22,B23,B24,B25,B26,B27,B28, *
- ;* B29,B30,B31 *
- ;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
- ;* B6,B7,B8,B9,B10,B11,B13,SP,A16,A17,A18,A19,A20, *
- ;* A21,A22,A23,A24,A25,A26,A27,A28,A29,A30,A31,B16, *
- ;* B17,B18,B19,B20,B21,B22,B23,B24,B25,B26,B27,B28, *
- ;* B29,B30,B31 *
- ;* Local Frame Size : 0 Args + 16 Auto + 16 Save = 32 byte *
- ;******************************************************************************
- _thrControlStartup:
- ;** --------------------------------------------------------------------------*
- MVKL .S1 _externalControl,A10 ; |89|
- || MVKL .S2 _MBX_post,B5 ; |92|
- || STW .D2T1 A10,*SP--(32) ; |79|
- MVKH .S1 _externalControl,A10 ; |89|
- || MVKH .S2 _MBX_post,B5 ; |92|
- CALL .S2 B5 ; |92|
- || LDW .D1T1 *A10,A3 ; |89|
- STDW .D2T2 B11:B10,*+SP(24) ; |79|
- STW .D2T2 B13,*+SP(20) ; |79|
- || MVKL .S2 _mbxProcess,B11 ; |92|
- || ZERO .L2 B10 ; |87|
- STW .D2T2 B10,*+SP(4) ; |87|
- || MVKH .S2 _mbxProcess,B11 ; |92|
- STW .D2T2 B10,*+SP(8) ; |88|
- || ADD .S2 4,SP,B4 ; |92|
- ADDKPC .S2 RL0,B3,0 ; |92|
- || STW .D2T1 A3,*+SP(12) ; |89|
- || MV .D1X B11,A4 ; |92|
- || MV .L2 B3,B13 ; |79|
- || ZERO .S1 A6 ; |92|
- RL0: ; CALL OCCURS ; |92|
- MVKL .S1 _MBX_post,A3 ; |101|
- MVKH .S1 _MBX_post,A3 ; |101|
- LDW .D1T1 *+A10(4),A5 ; |98|
- CALL .S2X A3 ; |101|
- MVK .D2 1,B4 ; |95|
- STW .D2T2 B4,*+SP(4) ; |95|
- STW .D2T2 B10,*+SP(8) ; |96|
- STW .D2T2 B10,*+SP(12) ; |97|
- ADDKPC .S2 RL1,B3,0 ; |101|
- || ADD .L2 4,SP,B4 ; |101|
- || STW .D2T1 A5,*+SP(16) ; |98|
- || MV .D1X B11,A4 ; |92|
- || ZERO .S1 A6 ; |101|
- RL1: ; CALL OCCURS ; |101|
- MV .S2 B13,B3 ; |103|
- || LDDW .D2T2 *+SP(24),B11:B10 ; |103|
- RET .S2 B3 ; |103|
- || LDW .D2T2 *+SP(20),B13 ; |103|
- LDW .D2T1 *++SP(32),A10 ; |103|
- NOP 4
- ; BRANCH OCCURS ; |103|
- .sect ".text"
- .global _thrControlSet
- ;******************************************************************************
- ;* FUNCTION NAME: _thrControlSet *
- ;* *
- ;* Regs Modified : A3,B0,B4 *
- ;* Regs Used : A3,A4,B0,B3,B4 *
- ;* Local Frame Size : 0 Args + 0 Auto + 0 Save = 0 byte *
- ;******************************************************************************
- _thrControlSet:
- ;** --------------------------------------------------------------------------*
- RETNOP .S2 B3,1 ; |71|
- MVKL .S1 _externalControl,A3 ; |69|
- MVKH .S1 _externalControl,A3 ; |69|
- || SUB .D2 B4,10,B4 ; |60|
- || CMPGT .L2 B4,10,B0 ; |60|
- STW .D1T1 A4,*A3 ; |69|
- || [!B0] MVK .D2 0x1,B4 ; |66|
- STW .D1T2 B4,*+A3(4) ; |70|
- ; BRANCH OCCURS ; |71|
- .sect ".text"
- .global _thrControlRun
- ;******************************************************************************
- ;* FUNCTION NAME: _thrControlRun *
- ;* *
- ;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
- ;* B5,B6,B7,B8,B9,B10,SP,A16,A17,A18,A19,A20,A21, *
- ;* A22,A23,A24,A25,A26,A27,A28,A29,A30,A31,B16,B17, *
- ;* B18,B19,B20,B21,B22,B23,B24,B25,B26,B27,B28,B29, *
- ;* B30,B31 *
- ;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
- ;* B5,B6,B7,B8,B9,B10,B13,SP,A16,A17,A18,A19,A20, *
- ;* A21,A22,A23,A24,A25,A26,A27,A28,A29,A30,A31,B16, *
- ;* B17,B18,B19,B20,B21,B22,B23,B24,B25,B26,B27,B28, *
- ;* B29,B30,B31 *
- ;* Local Frame Size : 0 Args + 16 Auto + 16 Save = 32 byte *
- ;******************************************************************************
- _thrControlRun:
- ;** --------------------------------------------------------------------------*
- MVKL .S2 _externalControl,B4 ; |116|
- || MVKL .S1 _externalControlPrev,A3 ; |116|
- MVKH .S2 _externalControl,B4 ; |116|
- || MVKH .S1 _externalControlPrev,A3 ; |116|
- LDW .D2T2 *B4,B4 ; |116|
- || LDW .D1T1 *A3,A3 ; |116|
- NOP 3
- STW .D2T2 B10,*SP--(32) ; |111|
- CMPEQ .L1X B4,A3,A0 ; |116|
- [ A0] B .S1 L2 ; |116|
- MVKL .S2 _mbxProcess,B5
- MVKH .S2 _mbxProcess,B5
- STDW .D2T1 A11:A10,*+SP(24) ; |111|
- [ A0] MVKL .S2 _mbxProcess,B4
- || STW .D2T2 B13,*+SP(20) ; |111|
- || MV .D1X B5,A11
- [ A0] MVKH .S2 _mbxProcess,B4
- ; BRANCH OCCURS ; |116|
- ;** --------------------------------------------------------------------------*
- MVKL .S1 _MBX_post,A3 ; |136|
- MVKH .S1 _MBX_post,A3 ; |136|
- NOP 1
- ;** --------------------------------------------------------------------------*
- L1:
- CALL .S2X A3 ; |136|
- STW .D2T2 B4,*+SP(12) ; |135|
- ZERO .S2 B5 ; |133|
- STW .D2T2 B5,*+SP(4) ; |133|
- || MVKL .S2 _externalControlPrev,B6 ; |129|
- STW .D2T2 B5,*+SP(8) ; |134|
- || MVKH .S2 _externalControlPrev,B6 ; |129|
- ADDKPC .S2 RL2,B3,0 ; |136|
- || ADD .L2 4,SP,B4 ; |136|
- || STW .D2T2 B4,*B6 ; |129|
- || MV .D1 A11,A4 ; |136|
- || ZERO .S1 A6 ; |136|
- RL2: ; CALL OCCURS ; |136|
- MVKL .S2 _mbxProcess,B4
- MVKH .S2 _mbxProcess,B4
- ;** --------------------------------------------------------------------------*
- L2:
- MVKL .S1 _TSK_timerSem,A10
- MV .D1X B4,A11
- || MVKH .S1 _TSK_timerSem,A10
- || MVK .S2 0x1f4,B10
- MVKL .S1 _externalControlPrev+4,A3 ; |140|
- MVKH .S1 _externalControlPrev+4,A3 ; |140|
- || MVKL .S2 _externalControl+4,B4 ; |140|
- MVKH .S2 _externalControl+4,B4 ; |140|
- LDW .D2T2 *B4,B4 ; |140|
- || MV .S2X A3,B6 ; |140|
- LDW .D2T2 *B6,B5 ; |140|
- ;*----------------------------------------------------------------------------*
- ;* SOFTWARE PIPELINE INFORMATION
- ;* Disqualified loop: Loop contains control code
- ;*----------------------------------------------------------------------------*
- L3:
- NOP 4
- CMPEQ .L2 B4,B5,B0 ; |140|
- [ B0] BNOP .S1 L4,2 ; |140|
- [ B0] MVKL .S2 _SEM_pend,B5 ; |157|
- || [!B0] MVKL .S1 _MBX_post,A3 ; |152|
- [ B0] MVKH .S2 _SEM_pend,B5 ; |157|
- || [!B0] MVKH .S1 _MBX_post,A3 ; |152|
- NOP 1
- ; BRANCH OCCURS ; |140|
- ;** --------------------------------------------------------------------------*
- CALL .S2X A3 ; |152|
- STW .D2T2 B4,*+SP(16) ; |151|
- STW .D2T2 B4,*B6 ; |144|
- || MVK .S2 1,B5 ; |148|
- ZERO .S2 B5 ; |149|
- || STW .D2T2 B5,*+SP(4) ; |148|
- STW .D2T2 B5,*+SP(12) ; |150|
- ADDKPC .S2 RL3,B3,0 ; |152|
- || STW .D2T2 B5,*+SP(8) ; |149|
- || ADD .L2 4,SP,B4 ; |152|
- || MV .D1 A11,A4 ; |152|
- || ZERO .S1 A6 ; |152|
- RL3: ; CALL OCCURS ; |152|
- MVKL .S2 _SEM_pend,B5 ; |157|
- MVKH .S2 _SEM_pend,B5 ; |157|
- ;** --------------------------------------------------------------------------*
- L4:
- CALL .S2 B5 ; |157|
- ADDKPC .S2 RL4,B3,2 ; |157|
- MV .D2 B10,B4 ; |157|
- MV .D1 A10,A4 ; |157|
- RL4: ; CALL OCCURS ; |157|
- MVKL .S1 _externalControlPrev,A3 ; |158|
- || MVKL .S2 _externalControl,B4 ; |158|
- MVKH .S1 _externalControlPrev,A3 ; |158|
- || MVKH .S2 _externalControl,B4 ; |158|
- LDW .D1T1 *A3,A3 ; |158|
- || LDW .D2T2 *B4,B4 ; |158|
- NOP 4
- CMPEQ .L1X B4,A3,A0 ; |158|
- [!A0] BNOP .S1 L1,2 ; |158|
- [!A0] MVKL .S1 _MBX_post,A3 ; |136|
- [!A0] MVKH .S1 _MBX_post,A3 ; |136|
- NOP 1
- ; BRANCH OCCURS ; |158|
- ;** --------------------------------------------------------------------------*
- B .S1 L3 ; |158|
- MVKL .S1 _externalControlPrev+4,A3 ; |140|
- MVKH .S1 _externalControlPrev+4,A3 ; |140|
- || MVKL .S2 _externalControl+4,B4 ; |140|
- MVKH .S2 _externalControl+4,B4 ; |140|
- LDW .D2T2 *B4,B4 ; |140|
- || MV .S2X A3,B6 ; |140|
- LDW .D2T2 *B6,B5 ; |140|
- ; BRANCH OCCURS ; |158|
- .sect ".text"
- .global _thrControlInit
- ;******************************************************************************
- ;* FUNCTION NAME: _thrControlInit *
- ;* *
- ;* Regs Modified : A3,A4,A5,B4,B5 *
- ;* Regs Used : A3,A4,A5,B3,B4,B5 *
- ;* Local Frame Size : 0 Args + 0 Auto + 0 Save = 0 byte *
- ;******************************************************************************
- _thrControlInit:
- ;** --------------------------------------------------------------------------*
- MVKL .S2 _externalControl,B4 ; |50|
- MVKH .S2 _externalControl,B4 ; |50|
- || MVK .S1 85,A4 ; |54|
- STW .D2T1 A4,*+B4(4) ; |54|
- || MVKL .S1 _externalControl,A3 ; |55|
- || MVK .S2 1,B5 ; |50|
- STW .D2T2 B5,*B4 ; |50|
- || MVKH .S1 _externalControl,A3 ; |55|
- RETNOP .S2 B3,2 ; |56|
- || LDNDW .D1T1 *A3,A5:A4 ; |55|
- MVKL .S2 _externalControlPrev,B4 ; |55|
- MVKH .S2 _externalControlPrev,B4 ; |55|
- STNDW .D2T1 A5:A4,*B4 ; |55|
- ; BRANCH OCCURS ; |56|
- ;******************************************************************************
- ;* UNDEFINED EXTERNAL REFERENCES *
- ;******************************************************************************
- .global _SEM_pend
- .global _MBX_post
- .global _TSK_timerSem
- .global _mbxProcess