?? chroma_resampling.asm
字號:
;******************************************************************************
;* TMS320C6x C/C++ Codegen PC Version 4.32 *
;* Date/Time created: Wed Jan 04 14:25:49 2006 *
;******************************************************************************
;******************************************************************************
;* GLOBAL FILE PARAMETERS *
;* *
;* Architecture : TMS320C64xx *
;* Optimization : Disabled *
;* Optimizing for : Compile time, Ease of Development *
;* Based on options: no -o, no -ms *
;* Endian : Little *
;* Interrupt Thrshld : Disabled *
;* Memory Model : Large *
;* Calls to RTS : Far *
;* Pipelining : Disabled *
;* Memory Aliases : Presume not aliases (optimistic) *
;* Debug Info : COFF Debug *
;* *
;******************************************************************************
.asg A15, FP
.asg B14, DP
.asg B15, SP
.global $bss
.file "chroma_resampling.c"
; c:\tic6000v2.20.18\c6000\cgtools\bin\acp6x.exe -@C:\DOCUME~1\dlftest1\LOCALS~1\Temp\TI4404_4
.sect ".text"
.global _YUV422to420v
.sym _YUV422to420v,_YUV422to420v, 32, 2, 0
.func 79
;******************************************************************************
;* FUNCTION NAME: _YUV422to420v *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A12,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,B10,B12,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,A12,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,B10,B12,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 + 212 Auto + 20 Save = 232 byte *
;******************************************************************************
_YUV422to420v:
;** --------------------------------------------------------------------------*
.line 1
.sym _in,4, 16, 17, 32
.sym _out,20, 16, 17, 32
.sym _width,6, 4, 17, 32
.sym _height,22, 4, 17, 32
.sym _scratch,8, 16, 17, 32
.sym _in,4, 16, 1, 32
.sym _out,8, 16, 1, 32
.sym _width,12, 4, 1, 32
.sym _height,16, 4, 1, 32
.sym _scratch,20, 16, 1, 32
.sym _i,24, 4, 1, 32
.sym _err_code,28, 4, 1, 32
.sym _id,32, 14, 1, 32
.sym _Cr_in,36, 28, 1, 32
.sym _Cb_in,40, 28, 1, 32
.sym _Cr_out,44, 28, 1, 32
.sym _Cb_out,48, 28, 1, 32
.sym _int_mem,52, 28, 1, 32
.sym _din_Cr,56, 8, 1, 256, _dstr_t
.sym _din_Cb,88, 8, 1, 256, _dstr_t
.sym _dout_Cr,120, 8, 1, 256, _dstr_t
.sym _dout_Cb,152, 8, 1, 256, _dstr_t
.sym _Cb_in_int,184, 28, 1, 32
.sym _Cr_in_int,188, 28, 1, 32
.sym _Cb_out_int,192, 28, 1, 32
.sym _Cr_out_int,196, 28, 1, 32
.sym _Cb_in_sc,200, 28, 1, 32
.sym _Cr_in_sc,204, 28, 1, 32
.sym _Cb_out_sc,208, 28, 1, 32
.sym _Cr_out_sc,212, 28, 1, 32
ADDK .S2 -232,SP ; |79|
|| MV .D1X SP,A31 ; |79|
STW .D2T2 B12,*+SP(232)
STW .D2T2 B10,*+SP(228)
STW .D2T2 B3,*+SP(224)
STW .D1T1 A12,*-A31(12)
STW .D1T1 A10,*-A31(16)
NOP 2
STW .D2T1 A8,*+SP(20) ; |79|
STW .D2T2 B6,*+SP(16) ; |79|
STW .D2T1 A6,*+SP(12) ; |79|
STW .D2T2 B4,*+SP(8) ; |79|
STW .D2T1 A4,*+SP(4) ; |79|
NOP 2
.line 33
MV .D1 A4,A3
LDW .D1T1 *+A3(8),A3 ; |111|
NOP 4
STW .D2T1 A3,*+SP(36) ; |111|
NOP 2
.line 34
MV .D1 A4,A3
LDW .D1T1 *+A3(4),A3 ; |112|
NOP 4
STW .D2T1 A3,*+SP(40) ; |112|
NOP 2
.line 36
LDW .D2T1 *+SP(8),A3 ; |114|
NOP 4
LDW .D1T1 *+A3(8),A3 ; |114|
NOP 4
STW .D2T1 A3,*+SP(44) ; |114|
NOP 2
.line 37
LDW .D2T1 *+SP(8),A3 ; |115|
NOP 4
LDW .D1T1 *+A3(4),A3 ; |115|
NOP 4
STW .D2T1 A3,*+SP(48) ; |115|
NOP 2
.line 42
LDW .D2T1 *+SP(20),A3 ; |120|
NOP 4
LDW .D1T1 *A3,A3 ; |120|
NOP 4
STW .D2T1 A3,*+SP(52) ; |120|
NOP 2
.line 43
MV .D2X A3,B4
STW .D2T2 B4,*+SP(200) ; |121|
NOP 2
.line 44
LDW .D2T1 *+SP(12),A3 ; |122|
NOP 3
MV .D1X B4,A4 ; |122|
ADDAW .D1 A4,A3,A3 ; |122|
STW .D2T1 A3,*+SP(204) ; |122|
NOP 2
.line 45
LDW .D2T2 *+SP(12),B4 ; |123|
NOP 3
MV .D2X A4,B5 ; |123|
ADDAD .D2 B5,B4,B4 ; |123|
STW .D2T2 B4,*+SP(208) ; |123|
NOP 2
.line 46
LDW .D2T2 *+SP(12),B4 ; |124|
NOP 4
SHL .S2 B4,3,B5 ; |124|
ADDAH .D2 B5,B4,B4 ; |124|
ADD .D2X B4,A4,B4 ; |124|
STW .D2T2 B4,*+SP(212) ; |124|
NOP 2
.line 54
LDW .D2T1 *+SP(4),A3 ; |132|
LDW .D2T2 *+SP(8),B4 ; |132|
NOP 4
LDW .D1T1 *A3,A3 ; |132|
|| LDW .D2T2 *B4,B4 ; |132|
NOP 4
CMPEQ .L1X A3,B4,A0 ; |132|
[ A0] BNOP .S1 L2,5 ; |132|
; BRANCH OCCURS ; |132|
;** --------------------------------------------------------------------------*
.line 55
ZERO .D2 B4 ; |133|
STW .D2T2 B4,*+SP(24) ; |133|
LDW .D2T2 *+SP(24),B5 ; |133|
LDW .D2T2 *+SP(16),B4 ; |133|
NOP 4
CMPLT .L2 B5,B4,B0 ; |133|
[!B0] BNOP .S1 L2,5 ; |133|
; BRANCH OCCURS ; |133|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Software pipelining disabled
;*----------------------------------------------------------------------------*
L1:
.line 56
LDW .D2T2 *+SP(12),B5 ; |134|
LDW .D2T2 *+SP(24),B6 ; |134|
LDW .D2T2 *+SP(4),B4 ; |134|
NOP 2
LDHU .D2T1 *+SP(12),A6 ; |134|
MPYLH .M2 B6,B5,B8 ; |134|
MPYLH .M2 B5,B6,B4 ; |134|
|| LDW .D2T2 *B4,B7 ; |134|
MVKL .S1 _DAT_copy,A3 ; |134|
MVKH .S1 _DAT_copy,A3 ; |134|
|| ADD .D2 B4,B8,B5 ; |134|
|| MPYU .M2 B5,B6,B4 ; |134|
SHL .S2 B5,16,B5 ; |134|
ADD .L2 B4,B5,B4 ; |134|
|| CALL .S2X A3 ; |134|
LDW .D2T2 *+SP(52),B4 ; |134|
|| ADD .S2 B4,B7,B5 ; |134|
ADDKPC .S2 RL0,B3,2 ; |134|
MV .D1X B5,A4 ; |134|
RL0: ; CALL OCCURS ; |134|
STW .D2T1 A4,*+SP(32) ; |134|
NOP 2
.line 57
MVKL .S2 _DAT_wait,B4 ; |135|
MVKH .S2 _DAT_wait,B4 ; |135|
CALL .S2 B4 ; |135|
ADDKPC .S2 RL1,B3,4 ; |135|
RL1: ; CALL OCCURS ; |135|
.line 58
LDW .D2T2 *+SP(24),B4 ; |136|
LDW .D2T2 *+SP(8),B6 ; |136|
LDW .D2T2 *+SP(12),B5 ; |136|
MVKL .S1 _DAT_copy,A3 ; |136|
MVKH .S1 _DAT_copy,A3 ; |136|
LDW .D2T1 *+SP(52),A4 ; |136|
LDHU .D2T1 *+SP(12),A6 ; |136|
LDW .D2T2 *B6,B7 ; |136|
|| MPYLH .M2 B4,B5,B8 ; |136|
MPYLH .M2 B5,B4,B6 ; |136|
|| CALL .S2X A3 ; |136|
ADDKPC .S2 RL2,B3,0 ; |136|
ADD .D2 B6,B8,B4 ; |136|
|| MPYU .M2 B5,B4,B6 ; |136|
SHL .S2 B4,16,B4 ; |136|
ADD .D2 B6,B4,B4 ; |136|
ADD .D2 B4,B7,B4 ; |136|
RL2: ; CALL OCCURS ; |136|
STW .D2T1 A4,*+SP(32) ; |136|
NOP 2
.line 59
LDW .D2T2 *+SP(24),B4 ; |137|
NOP 4
ADD .D2 1,B4,B4 ; |137|
STW .D2T2 B4,*+SP(24) ; |137|
LDW .D2T2 *+SP(16),B5 ; |137|
NOP 4
CMPLT .L2 B4,B5,B0 ; |137|
[ B0] BNOP .S1 L1,5 ; |137|
; BRANCH OCCURS ; |137|
;** --------------------------------------------------------------------------*
L2:
.line 62
MVKL .S2 _DAT_wait,B4 ; |140|
MVKH .S2 _DAT_wait,B4 ; |140|
CALL .S2 B4 ; |140|
LDW .D2T1 *+SP(32),A4 ; |140|
ADDKPC .S2 RL3,B3,3 ; |140|
RL3: ; CALL OCCURS ; |140|
.line 82
LDW .D2T2 *+SP(16),B5 ; |160|
LDW .D2T2 *+SP(12),B4 ; |160|
ADDAD .D2 SP,11,B9 ; |160|
MVKL .S1 _dstr_open,A3 ; |160|
LDHU .D2T2 *+SP(12),B10 ; |160|
MVKH .S1 _dstr_open,A3 ; |160|
MPYLH .M2 B5,B4,B8 ; |160|
MPYLH .M2 B4,B5,B7 ; |160|
MV .D2 B4,B6 ; |160|
ADD .L2 B8,B7,B4 ; |160|
|| SHL .S2 B6,2,B6 ; |160|
|| MPYU .M2 B5,B4,B5 ; |160|
SHL .S2 B4,16,B4 ; |160|
LDHU .D2T2 *+SP(12),B8 ; |160|
|| EXTU .S2 B6,16,16,B5 ; |160|
|| ADD .L2 B5,B4,B4 ; |160|
CALL .S2X A3 ; |160|
|| LDW .D2T2 *+SP(200),B6 ; |160|
LDW .D2T2 *+SP(40),B4 ; |160|
|| SHR .S2 B4,1,B7 ; |160|
MV .D1X B9,A4 ; |160|
MV .D1X B5,A8 ; |160|
ADDKPC .S2 RL4,B3,0 ; |160|
MV .D1X B7,A6 ; |160|
|| ZERO .D2 B12 ; |160|
|| MVK .S1 0x1,A12 ; |160|
|| MVK .L1 0x1,A10 ; |160|
RL4: ; CALL OCCURS ; |160|
STW .D2T1 A4,*+SP(28) ; |160|
NOP 2
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -