📄 my_convert.asm
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen PC Version 4.36 *
;* Date/Time created: Tue Dec 21 10:23:37 2004 *
;******************************************************************************
;******************************************************************************
;* 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 "my_convert.c"
.global _int_mem_temp
_int_mem_temp: .usect ".user_data_int",720,128
.sym _int_mem_temp,_int_mem_temp, 60, 2, 5760,, 720
; c:\ti\c6000\cgtools\bin\acp6x.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI1164_4
.sect ".text"
.global _yuv422to420
.sym _yuv422to420,_yuv422to420, 32, 2, 0
.func 14
;******************************************************************************
;* FUNCTION NAME: _yuv422to420 *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,B10,B11,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,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,B10,B11,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 + 48 Auto + 12 Save = 60 byte *
;******************************************************************************
_yuv422to420:
;** --------------------------------------------------------------------------*
.line 3
.sym _frameIn,4, 82, 17, 32
.sym _frm_out,20, 82, 17, 32
.sym _width,6, 4, 17, 32
.sym _height,22, 4, 17, 32
.sym _frameIn,4, 82, 1, 32
.sym _frm_out,8, 82, 1, 32
.sym _width,12, 4, 1, 32
.sym _height,16, 4, 1, 32
.sym _pSrcY,20, 18, 1, 32
.sym _pSrcU,24, 18, 1, 32
.sym _pSrcV,28, 18, 1, 32
.sym _pDestY,32, 18, 1, 32
.sym _pDestU,36, 18, 1, 32
.sym _pDestV,40, 18, 1, 32
.sym _id,44, 14, 1, 32
.sym _i,48, 14, 1, 32
STW .D2T2 B11,*SP--(64) ; |16|
STW .D2T2 B10,*+SP(60) ; |16|
STW .D2T2 B3,*+SP(56) ; |16|
NOP 2
STW .D2T2 B6,*+SP(16) ; |16|
STW .D2T1 A6,*+SP(12) ; |16|
|| MV .D1X B4,A3 ; |16|
STW .D2T1 A3,*+SP(8) ; |16|
|| MV .S2X A4,B4 ; |16|
STW .D2T2 B4,*+SP(4) ; |16|
NOP 2
.line 4
MV .D1X B4,A3
LDW .D1T1 *A3,A3 ; |17|
NOP 4
STW .D2T1 A3,*+SP(20) ; |17|
NOP 2
.line 5
LDW .D2T1 *+SP(4),A3 ; |18|
NOP 4
LDW .D1T1 *+A3(4),A3 ; |18|
NOP 4
STW .D2T1 A3,*+SP(24) ; |18|
NOP 2
.line 6
LDW .D2T1 *+SP(4),A3 ; |19|
NOP 4
LDW .D1T1 *+A3(8),A3 ; |19|
NOP 4
STW .D2T1 A3,*+SP(28) ; |19|
NOP 2
.line 8
LDW .D2T1 *+SP(8),A3 ; |21|
NOP 4
LDW .D1T1 *A3,A3 ; |21|
NOP 4
STW .D2T1 A3,*+SP(32) ; |21|
NOP 2
.line 9
LDW .D2T1 *+SP(8),A3 ; |22|
NOP 4
LDW .D1T1 *+A3(4),A3 ; |22|
NOP 4
STW .D2T1 A3,*+SP(36) ; |22|
NOP 2
.line 10
LDW .D2T2 *+SP(8),B4 ; |23|
NOP 4
LDW .D2T2 *+B4(8),B4 ; |23|
NOP 4
STW .D2T2 B4,*+SP(40) ; |23|
NOP 2
.line 15
ZERO .D2 B4 ; |28|
STW .D2T2 B4,*+SP(48) ; |28|
LDW .D2T2 *+SP(16),B4 ; |28|
NOP 2
ZERO .D2 B5 ; |28|
MVK .S2 720,B10 ; |30|
CMPLTU .L2 B5,B4,B0 ; |28|
[!B0] BNOP .S1 L2,5 ; |28|
; BRANCH OCCURS ; |28|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Software pipelining disabled
;*----------------------------------------------------------------------------*
L1:
.line 17
LDW .D2T2 *+SP(20),B6 ; |30|
|| MVKL .S2 _DAT_copy,B5 ; |30|
|| MV .L2 B5,B4
MVKH .S2 _DAT_copy,B5 ; |30|
|| MPYLHU .M2 B10,B4,B7 ; |30|
CALL .S2 B5 ; |30|
|| MPYU .M2 B10,B4,B4 ; |30|
SHL .S2 B7,16,B7 ; |30|
ADD .D2 B4,B7,B4 ; |30|
|| MVKL .S1 _int_mem_temp,A3 ; |30|
ADD .D2 B4,B6,B6 ; |30|
|| MVKH .S1 _int_mem_temp,A3 ; |30|
ADDKPC .S2 RL0,B3,0 ; |30|
MV .D2X A3,B4 ; |30|
|| MV .D1X B6,A4 ; |30|
|| MVK .S1 0x2d0,A6 ; |30|
RL0: ; CALL OCCURS ; |30|
STW .D2T1 A4,*+SP(44) ; |30|
NOP 2
.line 18
LDW .D2T2 *+SP(48),B4 ; |31|
MVKL .S1 _DAT_copy,A3 ; |31|
MVKH .S1 _DAT_copy,A3 ; |31|
LDW .D2T2 *+SP(32),B6 ; |31|
CALL .S2X A3 ; |31|
MPYLHU .M2 B10,B4,B7 ; |31|
|| MVKL .S2 _int_mem_temp,B5 ; |31|
MPYU .M2 B10,B4,B4 ; |31|
|| MVKH .S2 _int_mem_temp,B5 ; |31|
SHL .S2 B7,16,B7 ; |31|
ADD .D2 B4,B7,B4 ; |31|
ADDKPC .S2 RL1,B3,0 ; |31|
|| ADD .D2 B4,B6,B4 ; |31|
|| MV .D1X B5,A4 ; |31|
|| MVK .S1 0x2d0,A6 ; |31|
RL1: ; CALL OCCURS ; |31|
STW .D2T1 A4,*+SP(44) ; |31|
NOP 2
.line 19
MVKL .S2 _DAT_wait,B4 ; |32|
MVKH .S2 _DAT_wait,B4 ; |32|
CALL .S2 B4 ; |32|
ADDKPC .S2 RL2,B3,4 ; |32|
RL2: ; CALL OCCURS ; |32|
.line 20
LDW .D2T2 *+SP(48),B4 ; |33|
NOP 4
ADD .D2 1,B4,B4 ; |33|
STW .D2T2 B4,*+SP(48) ; |33|
LDW .D2T2 *+SP(16),B4 ; |33|
LDW .D2T2 *+SP(48),B5 ; |33|
NOP 4
CMPLTU .L2 B5,B4,B0 ; |33|
[ B0] BNOP .S1 L1,5 ; |33|
; BRANCH OCCURS ; |33|
;** --------------------------------------------------------------------------*
L2:
.line 22
LDW .D2T2 *+SP(16),B4 ; |35|
NOP 1
ZERO .D2 B5 ; |35|
STW .D2T2 B5,*+SP(48) ; |35|
MVK .S2 360,B11 ; |38|
SHR .S2 B4,1,B4 ; |35|
CMPLTU .L2 B5,B4,B0 ; |35|
[!B0] BNOP .S1 L4,5 ; |35|
; BRANCH OCCURS ; |35|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Software pipelining disabled
;*----------------------------------------------------------------------------*
L3:
.line 24
MPYU .M2 B10,B5,B7 ; |37|
LDW .D2T2 *+SP(24),B6 ; |37|
|| MVKL .S2 _DAT_copy,B5 ; |37|
|| MPYLHU .M2 B10,B5,B4 ; |37|
MVKH .S2 _DAT_copy,B5 ; |37|
CALL .S2 B5 ; |37|
SHL .S2 B4,16,B4 ; |37|
ADD .D2 B7,B4,B4 ; |37|
|| MVKL .S1 _int_mem_temp,A3 ; |37|
ADD .D2 B4,B6,B6 ; |37|
|| MVKH .S1 _int_mem_temp,A3 ; |37|
ADDKPC .S2 RL3,B3,0 ; |37|
MV .D2X A3,B4 ; |37|
|| MV .D1X B6,A4 ; |37|
|| MVK .S1 0x168,A6 ; |37|
RL3: ; CALL OCCURS ; |37|
STW .D2T1 A4,*+SP(44) ; |37|
NOP 2
.line 25
LDW .D2T2 *+SP(48),B5 ; |38|
MVKL .S1 _DAT_copy,A3 ; |38|
MVKH .S1 _DAT_copy,A3 ; |38|
LDW .D2T2 *+SP(36),B6 ; |38|
MVK .S1 0x168,A6 ; |38|
MPYLHU .M2 B11,B5,B4 ; |38|
CALL .S2X A3 ; |38|
SHL .S2 B4,16,B4 ; |38|
MVKL .S2 _int_mem_temp,B5 ; |38|
|| MPYU .M2 B11,B5,B7 ; |38|
MVKH .S2 _int_mem_temp,B5 ; |38|
ADD .D2 B7,B4,B4 ; |38|
ADD .D2 B4,B6,B4 ; |38|
|| MV .D1X B5,A4 ; |38|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -